2015-11-29 00:24:20 +08:00
|
|
|
//
|
|
|
|
// Copyright(c) 2015 Gabi Melman.
|
|
|
|
// Distributed under the MIT License (http://opensource.org/licenses/MIT)
|
|
|
|
//
|
2015-04-09 23:05:16 +08:00
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
2016-07-08 22:50:13 +08:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2015-11-29 00:24:20 +08:00
|
|
|
//
|
2016-07-22 23:06:36 +08:00
|
|
|
// Edit this file to squeeze more performance, and to customize supported features
|
2015-11-29 00:24:20 +08:00
|
|
|
//
|
2016-07-08 22:50:13 +08:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2015-04-09 23:05:16 +08:00
|
|
|
|
2016-08-22 21:39:46 +08:00
|
|
|
|
2015-04-09 23:05:16 +08:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Under Linux, the much faster CLOCK_REALTIME_COARSE clock can be used.
|
2015-05-10 02:35:17 +08:00
|
|
|
// This clock is less accurate - can be off by dozens of millis - depending on the kernel HZ.
|
2016-07-08 22:50:13 +08:00
|
|
|
// Uncomment to use it instead of the regular clock.
|
|
|
|
//
|
2015-04-09 23:05:16 +08:00
|
|
|
// #define SPDLOG_CLOCK_COARSE
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2016-07-08 22:50:13 +08:00
|
|
|
// Uncomment if date/time logging is not needed and never appear in the log pattern.
|
2015-04-10 17:34:57 +08:00
|
|
|
// This will prevent spdlog from quering the clock on each log call.
|
2016-07-08 22:50:13 +08:00
|
|
|
//
|
|
|
|
// WARNING: If the log pattern contains any date/time while this flag is on, the result is undefined.
|
|
|
|
// You must set new pattern(spdlog::set_pattern(..") without any date/time in it
|
|
|
|
//
|
2015-04-09 23:05:16 +08:00
|
|
|
// #define SPDLOG_NO_DATETIME
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2015-05-10 02:35:17 +08:00
|
|
|
// Uncomment if thread id logging is not needed (i.e. no %t in the log pattern).
|
2015-04-09 23:05:16 +08:00
|
|
|
// This will prevent spdlog from quering the thread id on each log call.
|
2016-07-08 22:50:13 +08:00
|
|
|
//
|
|
|
|
// WARNING: If the log pattern contains thread id (i.e, %t) while this flag is on, the result is undefined.
|
|
|
|
//
|
2015-04-09 23:05:16 +08:00
|
|
|
// #define SPDLOG_NO_THREAD_ID
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Uncomment if logger name logging is not needed.
|
|
|
|
// This will prevent spdlog from copying the logger name on each log call.
|
2016-07-08 22:50:13 +08:00
|
|
|
//
|
2015-04-09 23:05:16 +08:00
|
|
|
// #define SPDLOG_NO_NAME
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2015-05-10 02:35:17 +08:00
|
|
|
// Uncomment to enable the SPDLOG_DEBUG/SPDLOG_TRACE macros.
|
2016-07-08 22:50:13 +08:00
|
|
|
//
|
2015-04-09 23:05:16 +08:00
|
|
|
// #define SPDLOG_DEBUG_ON
|
|
|
|
// #define SPDLOG_TRACE_ON
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2015-05-09 19:14:16 +08:00
|
|
|
|
2015-05-10 02:32:53 +08:00
|
|
|
|
2015-05-10 02:41:20 +08:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2015-05-10 02:35:17 +08:00
|
|
|
// Uncomment to avoid locking in the registry operations (spdlog::get(), spdlog::drop() spdlog::register()).
|
|
|
|
// Use only if your code never modifes concurrently the registry.
|
2015-05-10 02:32:53 +08:00
|
|
|
// Note that upon creating a logger the registry is modified by spdlog..
|
2016-07-08 22:50:13 +08:00
|
|
|
//
|
2015-05-10 02:39:55 +08:00
|
|
|
// #define SPDLOG_NO_REGISTRY_MUTEX
|
2015-05-10 02:41:20 +08:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2016-04-03 11:12:43 +08:00
|
|
|
|
|
|
|
|
2016-04-10 06:37:11 +08:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Uncomment to avoid spdlog's usage of atomic log levels
|
2016-07-08 22:50:13 +08:00
|
|
|
// Use only if your code never modifies a logger's log levels concurrently by different threads.
|
|
|
|
//
|
2016-04-10 06:37:11 +08:00
|
|
|
// #define SPDLOG_NO_ATOMIC_LEVELS
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
2016-04-03 11:12:43 +08:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Uncomment to enable usage of wchar_t for file names on Windows.
|
2016-07-08 22:50:13 +08:00
|
|
|
//
|
2016-04-10 05:02:19 +08:00
|
|
|
// #define SPDLOG_WCHAR_FILENAMES
|
2016-04-03 11:12:43 +08:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2016-05-14 03:20:29 +08:00
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2016-05-15 06:01:01 +08:00
|
|
|
// Uncomment to override default eol ("\n" or "\r\n" under Linux/Windows)
|
2016-07-22 23:06:36 +08:00
|
|
|
//
|
2016-05-15 05:53:35 +08:00
|
|
|
// #define SPDLOG_EOL ";-)\n"
|
2016-05-14 03:20:29 +08:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2016-07-22 23:06:36 +08:00
|
|
|
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Uncomment to use your own copy of the fmt library instead of spdlog's copy.
|
|
|
|
// In this case spdlog will try to include <fmt/format.h> so set your -I flag accordingly.
|
|
|
|
//
|
|
|
|
// #define SPDLOG_FMT_EXTERNAL
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2016-08-23 01:52:16 +08:00
|
|
|
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Uncomment to enable syslog (disabled by default)
|
|
|
|
//
|
|
|
|
// #define SPDLOG_ENABLE_SYSLOG
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
2016-12-10 08:04:20 +08:00
|
|
|
|
2017-04-01 23:37:16 +08:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Uncomment to enable wchar_t support (convert to utf8)
|
|
|
|
//
|
|
|
|
// #define SPDLOG_WCHAR_TO_UTF8_SUPPORT
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
2016-12-10 07:43:43 +08:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2016-12-10 08:03:13 +08:00
|
|
|
// Uncomment to prevent child processes from inheriting log file descriptors
|
2016-12-10 07:43:43 +08:00
|
|
|
//
|
|
|
|
// #define SPDLOG_PREVENT_CHILD_FD
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2017-04-29 01:25:31 +08:00
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Uncomment to mark some types as final, allowing more optimizations in release
|
|
|
|
// mode with recent compilers. See GCC's documentation for -Wsuggest-final-types
|
|
|
|
// for instance.
|
|
|
|
//
|
|
|
|
// #define SPDLOG_FINAL final
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2017-05-19 03:37:51 +08:00
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2017-05-21 06:56:56 +08:00
|
|
|
// Uncomment to enable message counting feature. Adds %i logger pattern that
|
2017-05-19 03:37:51 +08:00
|
|
|
// prints log message sequence id.
|
|
|
|
//
|
2017-05-21 09:03:36 +08:00
|
|
|
// #define SPDLOG_ENABLE_MESSAGE_COUNTER
|
2017-05-19 03:37:51 +08:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|