spdlog/include/spdlog/tweakme.h

151 lines
6.1 KiB
C
Raw Normal View History

2015-11-28 18:24:20 +02:00
//
// Copyright(c) 2015 Gabi Melman.
// Distributed under the MIT License (http://opensource.org/licenses/MIT)
//
#pragma once
2016-07-08 17:50:13 +03:00
///////////////////////////////////////////////////////////////////////////////
2015-11-28 18:24:20 +02:00
//
2016-07-22 18:06:36 +03:00
// Edit this file to squeeze more performance, and to customize supported features
2015-11-28 18:24:20 +02:00
//
2016-07-08 17:50:13 +03:00
///////////////////////////////////////////////////////////////////////////////
2016-08-22 16:39:46 +03:00
///////////////////////////////////////////////////////////////////////////////
// Under Linux, the much faster CLOCK_REALTIME_COARSE clock can be used.
2015-05-09 21:35:17 +03:00
// This clock is less accurate - can be off by dozens of millis - depending on the kernel HZ.
2016-07-08 17:50:13 +03:00
// Uncomment to use it instead of the regular clock.
//
// #define SPDLOG_CLOCK_COARSE
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
2016-07-08 17:50:13 +03:00
// Uncomment if date/time logging is not needed and never appear in the log pattern.
2015-04-10 12:34:57 +03:00
// This will prevent spdlog from quering the clock on each log call.
2016-07-08 17:50:13 +03: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
//
// #define SPDLOG_NO_DATETIME
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
2015-05-09 21:35:17 +03:00
// Uncomment if thread id logging is not needed (i.e. no %t in the log pattern).
// This will prevent spdlog from quering the thread id on each log call.
2016-07-08 17:50:13 +03:00
//
// WARNING: If the log pattern contains thread id (i.e, %t) while this flag is on, the result is undefined.
//
// #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 17:50:13 +03:00
//
// #define SPDLOG_NO_NAME
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
2015-05-09 21:35:17 +03:00
// Uncomment to enable the SPDLOG_DEBUG/SPDLOG_TRACE macros.
2016-07-08 17:50:13 +03:00
//
// #define SPDLOG_DEBUG_ON
// #define SPDLOG_TRACE_ON
///////////////////////////////////////////////////////////////////////////////
2015-05-09 13:14:16 +02:00
2015-05-09 21:41:20 +03:00
///////////////////////////////////////////////////////////////////////////////
2015-05-09 21:35:17 +03: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.
// Note that upon creating a logger the registry is modified by spdlog..
2016-07-08 17:50:13 +03:00
//
2015-05-09 21:39:55 +03:00
// #define SPDLOG_NO_REGISTRY_MUTEX
2015-05-09 21:41:20 +03:00
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// Uncomment to avoid spdlog's usage of atomic log levels
2016-07-08 17:50:13 +03:00
// Use only if your code never modifies a logger's log levels concurrently by different threads.
//
// #define SPDLOG_NO_ATOMIC_LEVELS
///////////////////////////////////////////////////////////////////////////////
2017-05-21 04:07:20 +03:00
///////////////////////////////////////////////////////////////////////////////
// Uncomment to enable usage of wchar_t for file names on Windows.
2016-07-08 17:50:13 +03:00
//
// #define SPDLOG_WCHAR_FILENAMES
///////////////////////////////////////////////////////////////////////////////
2017-05-21 04:07:20 +03:00
///////////////////////////////////////////////////////////////////////////////
2016-05-15 01:01:01 +03:00
// Uncomment to override default eol ("\n" or "\r\n" under Linux/Windows)
2016-07-22 18:06:36 +03:00
//
2016-05-15 00:53:35 +03:00
// #define SPDLOG_EOL ";-)\n"
///////////////////////////////////////////////////////////////////////////////
2016-07-22 18:06:36 +03: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
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// Uncomment to use printf-style messages in your logs instead of the usual
// format-style used by default.
//
// #define SPDLOG_FMT_PRINTF
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
// Uncomment to enable syslog (disabled by default)
//
// #define SPDLOG_ENABLE_SYSLOG
///////////////////////////////////////////////////////////////////////////////
2016-12-10 02:04:20 +02:00
2017-04-01 23:37:16 +08:00
///////////////////////////////////////////////////////////////////////////////
// Uncomment to enable wchar_t support (convert to utf8)
//
// #define SPDLOG_WCHAR_TO_UTF8_SUPPORT
///////////////////////////////////////////////////////////////////////////////
2017-05-21 04:07:20 +03:00
///////////////////////////////////////////////////////////////////////////////
2016-12-10 02:03:13 +02:00
// Uncomment to prevent child processes from inheriting log file descriptors
//
// #define SPDLOG_PREVENT_CHILD_FD
///////////////////////////////////////////////////////////////////////////////
2017-05-21 04:07:20 +03:00
///////////////////////////////////////////////////////////////////////////////
// Uncomment if your compiler doesn't support the "final" keyword.
// The final keyword allows more optimizations in release
// mode with recent compilers. See GCC's documentation for -Wsuggest-final-types
// for instance.
//
// #define SPDLOG_NO_FINAL
///////////////////////////////////////////////////////////////////////////////
2017-05-21 04:07:20 +03:00
///////////////////////////////////////////////////////////////////////////////
2017-10-12 19:48:04 +03:00
// Uncomment to enable message counting feature.
// Use the %i in the logger pattern to display log message sequence id.
//
2017-05-21 04:03:36 +03:00
// #define SPDLOG_ENABLE_MESSAGE_COUNTER
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
2017-11-25 15:41:55 +02:00
// Uncomment to customize level names (e.g. "MT TRACE")
//
2017-11-25 15:41:55 +02:00
// #define SPDLOG_LEVEL_NAMES { "MY TRACE", "MY DEBUG", "MY INFO", "MY WARNING", "MY ERROR", "MY CRITICAL", "OFF" }
2017-09-29 22:43:48 +03:00
///////////////////////////////////////////////////////////////////////////////