Commit Graph

1900 Commits (c1af0a3f21eff41b0f8ab37d4aa821fdea712cb3)

Author SHA1 Message Date
gabime 4037959945 Fix tidy warning 6 years ago
gabime d7313a3274 Fix tidy warning 6 years ago
gabime 8302086942 Fixed tcp_client 6 years ago
Gabi Melman 0120dcc787
Update logger-inl.h 6 years ago
Steven Cartmell f999d879d5
fix: Break from loop on last iteration to resolve clang-tidy warning
The clang-tidy warning `clang-analyzer-cplusplus.Move` warns when a
moved from object is deferenced. This is triggered in spdlog because
clang-tidy fails to detect that the `logger:set_formatter` will only
move the unique_ptr on the last iteration of the loop, assuming that
`f->clone` may be called on it afterwards.

To fix, add a break statement after moving the pointer (on the last
iteration) to let clang-tidy know the logger pointer is not used after
this point.
6 years ago
gabime e696978d11 Renamed function name 6 years ago
gabime fbf2e942a9 Allow "err" when converting string to level 6 years ago
gabime c10be7eaec merge with v1.x 6 years ago
gabime 05ecad4263 Use windows_include in os-inl.h 6 years ago
Gabi Melman 4cdb159ccb
Update spdlog.h 6 years ago
Gabi Melman fccb25586f
Update spdlog.h 6 years ago
Gabi Melman ab2f3307eb
Update spdlog.h 6 years ago
Gabi Melman db26a103d6
Update spdlog.h 6 years ago
Gabi Melman 32902f79ad
Merge pull request #1453 from david-bodor-at-craftunique/v1.x
only include windows.h when it's unavoidable
6 years ago
Dávid Bodor fab33dd230 refactor: extract windows.h include to details/windows_include.h 6 years ago
Dávid Bodor 6e763d2776 only include windows.h when it's unavoidable 6 years ago
gabime c71b433a35 clang-format 6 years ago
gabime 0b91d55269 Refactored tcp_client_sink 6 years ago
gabime 9f41903067 Refactored tcp_client_sink 6 years ago
gabime 64de8807e2 Fix #1452 6 years ago
gabime 3848cbe24a Fix #1452 6 years ago
Crunkle d38d53d9dd Fix Win32 event log sink 6 years ago
gabime 4b7c05903b optimize wincolor_sink to use array instead of map to find color codes 6 years ago
gabime 695912c7cf Optimize ansicolor_sink to use array instead of map to find color codes 6 years ago
gabime d4fd17f64f Fixed #1439 6 years ago
Gabi Melman 76d94e69ae
Fix #1439 6 years ago
Gabi Melman 0f42744f5c
Update rotating_file_sink-inl.h 6 years ago
tt4g 0cf1af5bbf Avoid references to race data filename 6 years ago
Gabi Melman a343328a21
Update rotating_file_sink-inl.h 6 years ago
Gabi Melman 53a56b82af
Update rotating_file_sink-inl.h 6 years ago
Gabi Melman 64dd4dc219
Update rotating_file_sink-inl.h 6 years ago
Gabi Melman 9e9da42c64
Update rotating_file_sink.h 6 years ago
tt4g 0778211116 Add critical section to filename function of each file sink 6 years ago
Gabi Melman 574563d711
Update tcp_sink.h 6 years ago
dominicpoeschko eef981e05f
Handling SPDLOG_PREVENT_CHILD_FD in tcp_sink
Adding SOCK_CLOEXEC to socket

Fixing bug in sink_it_ (bytes_sent not added to buffer)
6 years ago
gabime 9f24f4bc69 revert last commit 6 years ago
gabime 5da9818676 updated member name in win eventlog sink 6 years ago
gabime ff59b07986 Update tcp_sink.h 6 years ago
gabime 1b6d4fd277 Update tcp_sink.h 6 years ago
gabime 7b19890deb Update tcp_sink.h 6 years ago
gabime 5370443ece clang-format 6 years ago
gabime ad4fb1cf84 Fixed tcp sink 6 years ago
gabime 7f8169f0da Fixed tcp_sink to accept hostnames 6 years ago
gabime 66e8652862 Fix tcp_sink 6 years ago
gabime 05cbdbc1ef moved tcp sink to sinks 6 years ago
Vyacheslav d96d8c49ac
Code Style naming 6 years ago
Vyacheslav 4bb623a0a3
removed unneccessary namespace std 6 years ago
Vyacheslav 3aa94a0997
Added send function verification + licence 6 years ago
Vyacheslav ccad4ae04f
Resolve modification requests 6 years ago
v.reshetnikov 346b9ae5a1 tcp_sink implementation for fluentbit 6 years ago
Gabi Melman e278953191 Update win_eventlog_sink.h 6 years ago
Gabi Melman 573ddf8aec
Merge pull request #1424 from dominicpoeschko/patch-2
adding additional log overload to prevent unnecessary fmt::format
6 years ago
gabime 4f32243214 Update comment 6 years ago
gabime 601bdfb1b4 Minor cleanup 6 years ago
gabime 640921cd3f Optimize win_eventlog to avoid string allocation 6 years ago
Gabi Melman fccee959b1
Merge pull request #1418 from ban-dana/v1.x
Add eventlog_sink for logging to Windows Event Log (local only)
6 years ago
bandana2004 67a8ecf2bf Remove registration and stderr reporting from win_eventlog_sink 6 years ago
bandana2004 d8701890b2 cleanup win_eventlog_sink 6 years ago
bandana2004 2435f46d06 fix registry key handle leak in win_eventlog_sink::add_registry_info 6 years ago
bandana2004 4bece787c8 Refactor Event Log sink 6 years ago
dominic 033fe9f133 Properly handling SPDLOG_PREVENT_CHILD_FD
Removed check for posix version so that missing O_CLOEXEC leads to
compiler error.

Removed extra function since it hat no real purpose anymore.

Error behavior between Windows and Unix now equivalent.
6 years ago
dominicpoeschko 25b10dc264 additional log overload
calling log with a string_view as msg called
```
 template<typename... Args>
    void log(source_loc loc, level::level_enum lvl, string_view_t fmt, const Args &... args)
```

instead of
```
template<class T, typename std::enable_if<std::is_convertible<const T &, spdlog::string_view_t>::value, T>::type * = nullptr>
    void log(source_loc loc, level::level_enum lvl, const T &msg)
```

which lead to an unnecessary call to fmt::format
6 years ago
dominicpoeschko a9c3630d1b
Properly handling SPDLOG_PREVENT_CHILD_FD
Using the SPDLOG_PREVENT_CHILD_FD option there where still a race when
a other thread was using fork and exec in between the call to fopen and fcntl.

Using open and O_CLOEXEC when possible prevents this race.

I have no idea if this problem  exists on Windows.
6 years ago
bandana2004 db1a221427 Add eventlog_sink for logging to Windows Event Log (local only). 6 years ago
weiy 85ea4297b9 update method name 6 years ago
weiy 34cc3419fa add max files for rotating days 6 years ago
weiy 46fcd2e844 add max files for rotating days 6 years ago
gabime 877eee408e renamed loaders with cfg 6 years ago
gabime 1a1c37db7c wip 6 years ago
gabime a87700a28c wip 6 years ago
gabime 1f8e9ad0fc renamed cfg namespace to loaders 6 years ago
gabime e13e978af4 added loaders tests 6 years ago
gabime 28e334c728 Fixed tests 6 years ago
gabime 15a9427112 wip 6 years ago
gabime 010b0e1d75 wip 6 years ago
gabime cd5ddca00d wip 6 years ago
gabime 773b8c5a54 refectored file names 6 years ago
gabime fc3d18ed64 format 6 years ago
gabime 68ed281461 Refactored to cfg::log_levels class 6 years ago
gabime 65ada37399 refactor and and support for init from argv 6 years ago
gabime 0dfb1d264e removed include 6 years ago
gabime a056b9115b clang-format 6 years ago
gabime 4a0f4fc186 keep clang-tidy happy 6 years ago
gabime 3a61dcd360 Aceept also 'warn' string in level::from_str() 6 years ago
gabime 13ebfc0779 rename function 6 years ago
gabime 70d3c2cd3e so::getenv - Always empty string under windows uwp since it's not supported 6 years ago
gabime 9d3591dcd5 refactor 6 years ago
gabime 8992f36fbf refactor env-inl 6 years ago
gabime 3d203aa7c4 Simplify and removed SPDLOG_PATTERN support 6 years ago
gabime cd8d7e6de9 wip 6 years ago
gabime 5d4e6f17ee wip 6 years ago
gabime 49f707ec93 wip 6 years ago
gabime 6a305df46d wip 6 years ago
gabime 35e9482574 wip 6 years ago
gabime dac61d4e9c merge 6 years ago
gabime 4fa463dff6 Merge branch 'v1.x' into conf-env2 6 years ago
gabime 175741ed1d Bump fmt to 6.1.2 6 years ago
gabime 8d9d9899b7 wip 6 years ago
gabime 3812c22f86 Merge remote-tracking branch 'origin/v1.x' into conf-env2 6 years ago
gabime 2b3000dddc wip 6 years ago
gabime b278baf94e wip 6 years ago
gabime 4119b72d50 clang-format 6 years ago
gabime da2c15ecb4 wip config from env 6 years ago
gabime 25a702fc22 Update fmt.h 6 years ago
gabime ab178057db Fixed (maybe) #1348 6 years ago
gabime d0ed873ab6 wip 6 years ago
gabime 0f24399887 wip 6 years ago
gabime abbbda6f74 wip 6 years ago
gabime 4d41fdf0fc Wip 6 years ago
gabime c9bb85c91d Revert supress of warning 4996 under msvc 2015 6 years ago
gabime 53d58f222f fix warning C4996 under vs2015 about std::copy in fmt 6 years ago
gabime 6b5ebab6ae Fixed msvc compilation 6 years ago
gabime 8107df08a8 Bump bundled fmt to 6.1.1-rc 6 years ago
gabime dc29500931 version 1.5.0-rc 6 years ago
gabime 31fc1aca53 Supress -Wimplicit-fallthrough and -Wsign-conversion when including fmt headers 6 years ago
gabime 0db4b04ad3 Bump bundled fmt to version 6.1.0 6 years ago
gabime 1aa9ea92e2 Fix #1340 6 years ago
gabime 6f977248bf Impl #1298 6 years ago
gabime d25fb08a75 clang-format 6 years ago
gabime 79e105243c Fix #1335 6 years ago
gabime 2d4e531ac9 Fix #1327 6 years ago
gabime 52403ad9ed Fix #1332 6 years ago
Florin Iucha c172c72be9 Fix compiler warnings 6 years ago
Gabi Melman 79259fdb3f
Update os-inl.h 6 years ago
gabime cee35f7d24 Added truncate flag (issue #1297) 6 years ago
Zhi Sun e8f7f80f2b Remove redundant semicolon 6 years ago
gabime 6db8beeade Removed un needed file 6 years ago
gabime 4f66313440 Fix #1308 6 years ago
gabime 89b5bcfdc7 Updated ringbuffer sink 6 years ago
gabime 26f706ebe3 Fixed #1302 6 years ago
gabime 0cb38085a1 Updated ringbuffer sink 6 years ago
Gabi Melman cff6644b28
Merge pull request #1307 from eudoxos/ringbuffer-sink
Add ringbuffer sink
6 years ago
Václav Šmilauer 63837530ed Fix circular_q::size() empty case 6 years ago
Václav Šmilauer 62e09e73f7 defer formatting, use log_msg_buffer for intermediate storage 6 years ago
Václav Šmilauer daef0a2374 Fix circular_q::size() 6 years ago
Václav Šmilauer 042045b998 typo fix 6 years ago
Václav Šmilauer bad7284465 Fix cicular_q::size() 6 years ago
Václav Šmilauer 6f0cb6365e Move ringbuffer_sink to spdlog::details::circular_q, enhance its API: size(), at(i) 6 years ago
Václav Šmilauer acf32be842 Add ringbuffer sink (requires boost::circular_buffer)
Ringbuffer sink keeps user-given number of most recent log messages in
memory and returns them upon request (using the ringbuffer_sink::last
method). This can be useful for e.g. remote debugging of a running app.
6 years ago
gabime bff85725d2 Fixed some more clang-tidy warnings 6 years ago
gabime 93008b2369 Fix clang-tidy warning about non existing move 6 years ago
gabime be336e7514 Added noexcept to log_msg move constructor 6 years ago
gabime 255f7f2dee Optimze backtracer operator= 6 years ago
gabime de2c07ac62 always cache gmt offset 6 years ago
gabime 844d54d7e6 Fix #1302 6 years ago
gabime ff3e6c7248 Fix issue #1306 6 years ago
Cristian Morales Vega 7cdd65075c "#include" <spdlog/.*> instead of "spdlog/.*"
The meaning of using quotes to #include is implementation defined, so it
may or not may be what we want. At least POSIX
(https://pubs.opengroup.org/onlinepubs/9699919799/utilities/c99.html)
says: "headers whose names are enclosed in double-quotes ( "" ) shall be
searched for first in the directory of the file with the #include line",
so not what we want since "spdlog" ends up twice in the path.
6 years ago
gabime 10116b7717 Removed SPDLOG_NO_DATETIME option 6 years ago
gabime dae1aeb1f7 clang-format 6 years ago
gabime 57085c892f exclude from compilation prevent_child_fd() if SPDLOG_PREVENT_CHILD_FD not defined 6 years ago
Charles Milette 0e09ecbaa5
Correctly guard SetHandleInformation API call
`__cplusplus_winrt` only detected C++/CX (which can be used without compiling for UWP, SetHandleInformation would be available in those cases), and did not detect native UWP C++. This patch fixes that by using the WINAPI_FAMILY_PARTITION macro in the Windows SDK headers in the same way those headers remove SetHandleInformation in UWP builds.
6 years ago
gabime e3699070a4 clang-format 6 years ago
gabime bf40855825 Micro-optimize level checking by inlining 6 years ago
gabime 3ee4f2810d Micro-optimze log_it_ 6 years ago
gabime 79468cf676 Micro-optimze log_it_ 6 years ago
gabime cae6c9ab36 Removed lazy argument evaluation from macros 6 years ago
gabime 15b393193a Replaced a forgotten try with SPDLOG_TRY 6 years ago
Paul Kunysch eb4a169cfb Improve log macros 6 years ago
Jan Kundrát 17513a6dce journald: structured output for logger's name
Previously, the logger name was effectively lost. There were two choices
on how to add it:

- Via a formatter, which would mean that `journalctl` would not be able
to filter against that. That would be suboptimal.

- As a "syslog identifier". This means that `journalctl` will, by
default, stop showing the daemon's executable name and replace that via
the logger name. The PID is still shown, and if one would like to go
back to the previous behavior, it is still possible via `journalctl -o
with-unit`.

I think that the second option is strictly better than the first one.

fixes #1289
6 years ago
Jan Kundrát a44560ddb6 journald: fix source file location
This is what my manpage says, and what the original blog post [1] says
as well.

Also, `sd_journal_send` can add the location of its own invocation to
the log. That's typically not what we want, so we have to suppress that
feature and instead put whatever is inside the spdlog message into the
journal.

[1] http://0pointer.de/blog/projects/journal-submit.html
6 years ago
Michael Mullin 5881fcb0d6 Remove unused variable 6 years ago
Gabi Melman 491a2e8732
Update os-inl.h 6 years ago
gabime 05105155f8 refactoed file_helper 6 years ago
gabime 9f96545fa7 refactoed file_helper 6 years ago
gabime 0c60107e62 refactoed file_helper 6 years ago
gabime aac7dccf45 comment 6 years ago
gabime c19e325b83 Added some tests for create_dir 6 years ago
gabime bd92c23add comment 6 years ago
gabime a4602021d8 Renamed private members of file_helper 6 years ago
gabime dbe5c17a96 Renamed file_exists()->path_exists() 6 years ago
gabime c40555c0ac clang-format 6 years ago
gabime a1f283946e updated os::dir_name and tests 6 years ago
gabime 066087b383 Update create_dir 6 years ago
gabime e9d42e059f // support forward slash in windows 6 years ago
Gabi Melman d3c6974e99
Update os.h 6 years ago
Gabi Melman 1271081865
Update os-inl.h 6 years ago
Gabi Melman 8a638a95a0
Update os-inl.h 6 years ago
Gabi Melman d9f726f2a5
Add global namespace qualifiers to global function calls in os-inl.h 6 years ago
gabime 9a68bd8cc8 Fixed missing include 6 years ago
gabime 9b7812a0f2 auto create log dir 6 years ago
Florian Pigorsch 4aad51a352 Fix some spelling errors.
casese -> cases (1)
chache -> cache (1)
cirucal -> circular (1)
dependecy -> dependency (1)
detrmine -> determine (2)
eavluate -> evaluate (1)
exertnal -> external (1)
ony -> only (1)
registation -> registration (3)
registring -> registering (2)
regsistration -> registration (3)
seperate -> separate (2)
wit -> with (1)
withe -> with (1)
6 years ago
gabime 9a0a0c2d8c clang-format 6 years ago
gabime fcc809f4f1 Refactored logger 6 years ago
Jan Kundrát a03f9eb156 Fix build failure on clang 7 with libc++
Unlike the GNU C++ STL, there's no implicit include for <array> in this
one, apparently.
6 years ago
Gabi Melman aa65dd8905
version 1.4.3 rc 6 years ago
gabime 9369fe8c27 Fix #1262 6 years ago
gabime 70357ceff2 clang-format 6 years ago
gabime cfe7cac1c4 version 1.4.2 6 years ago
Gabi Melman 5cd0b6272d
Update logger-inl.h 6 years ago
Gabi Melman bf49bebe7a
Update logger.h 6 years ago
Benjamin Sergeant 5381061d97 Fix windows compile error where std::max is overriden by a macro (#1251) 6 years ago
gabime 274558c430 Fix issue #1250 6 years ago
gabime 188afe20f9 Fix issue #1249 6 years ago
gabime 453be2e08a clang-format 6 years ago
Bak, Jin Hyeong f8e780b9dd Fix #1239, Remove basic_string_view_t 6 years ago
gabime fe20afac17 clang-format 6 years ago
gabime 3b425affd3 Fixed missing braces around initializer warnings about std::array initializations 6 years ago
Gabi Melman 90801267ee
Merge pull request #1234 from jbeich/dragonfly
Unbreak on more BSDs
6 years ago
Jan Beich 8d57823e51 fstat64 is missing on other DragonFly, NetBSD, OpenBSD
Modern operating systems don't need to implement transitional
extensions for large file support.
6 years ago
Gabi Melman 277ccc5e18
Update log_msg_buffer-inl.h 6 years ago
Gabi Melman cff9db5044
Update log_msg_buffer-inl.h 6 years ago
Gabi Melman 216f905670
Fix log msg buffer operator= 6 years ago
Jan Beich 53b2308011 Implement _thread_id() on more Unices 6 years ago
gabime c368500efd Reverted some external template declarations 6 years ago
gabime 2fed68a73b Reverted some external template declarations 6 years ago
gabime e7ab49c973 Added extern tempalate declarations 6 years ago
gabime 5496491aa4 Added extern template declarations 6 years ago
Gabi Melman 2331750b58
Update log_msg_buffer.h 6 years ago
Gabi Melman b3fb4c1265
Update log_msg_buffer-inl.h 6 years ago
Gabi Melman 3ad7b9b117
Update log_msg_buffer-inl.h 6 years ago
gabime 5721debdf1 split to log_msg_buffer.h ito header and mpl 6 years ago
gabime e771f4e75e Fix mingw32 compilation 6 years ago
Gabi Melman 35835469d7
Update common.h 6 years ago
Gabi Melman 0d6992fcdd
Update common.h 6 years ago
gabime 29b3f471cf Added const vecsion to circula_q::front() 6 years ago
gabime 4985875a15 Renamed item_type => value_type in circular_q 6 years ago
gabime 4fffd3a111 Avoid un necessary move when popping circular_q 6 years ago
gabime 590749e8be Avoid un necessary move when popping circular_q 6 years ago
gabime 27cc76766c Avoid un necessary move when popping circular_q 6 years ago
gabime d52cf87d71 Avoid un necessary move when popping circular_q 6 years ago
gabime 2ddd6895e1 Backported clang warning fix from fmt 6 years ago
Gabi Melman 68118f4233
Update daily_file_sink.h 6 years ago
gabime 5d46f3fcab Fix windows build 6 years ago
gabime 494cc8bace Implemented daily sink rotation #661 6 years ago
gabime 03e8c0f45c Fix issue #1219 6 years ago
gabime b6388a15ff Fix issue #1223 6 years ago
gabime 1857a44c7c Fix #1215 6 years ago
gabime bd9e1475e2 clang-format 6 years ago
gabime 6883267996 Added const to circular_q empty() and full() 6 years ago
gabime b88c784634 Improved circular_q move 6 years ago
gabime 31020f9eea Fixed vs 2015 warning abour fmt unused variable 6 years ago
Tobias Pfeiffer e149433a80 Bumped fmt to version 6.0.0 6 years ago
gabime 65d02e495e Reverted the version() function 6 years ago
gabime 7f0398ca25 Added version() function 6 years ago
gabime dae4f9fef6 split spdlog.cpp to multiple .cpp files 6 years ago
gabime 4c45c6fbd8 Removed redundant func 6 years ago
gabime feefb7e7e2 format 6 years ago
gabime ced44a15ea format 6 years ago
gabime 5c2855e1c1 wip backtracer 6 years ago
gabime 433785dc64 fix warnings and build 6 years ago
gabime 28845b96bd Update circular_q.h 6 years ago
gabime 98ec35cee1 Update backtracer.h 6 years ago
gabime f795297e15 try different apprach to backtracer object 6 years ago
gabime 3fd3c47e6d Update logger-inl.h 6 years ago
gabime 153c25dbb3 Update logger-inl.h 6 years ago
gabime a1a6b7e64f Update backtracer.h 6 years ago
gabime 3ea7fb18d6 Fix potential race condidion when in logger copy ctor
Don't copy other.trace - just create a new one with same size instead
6 years ago
gabime 6ff52332a8 Remove unused member from backtracer 6 years ago
gabime 5e75b104d6 Fix backtracer 6 years ago
gabime dc893701f9 Update circular_q.h 6 years ago