LogIt++
Loading...
Searching...
No Matches
LogMacros.hpp File Reference

Provides various logging macros for different log levels and options. More...

Go to the source code of this file.

Macros

#define _LOGIT_LOG_MACROS_HPP_INCLUDED
 
#define LOGIT_FUNCTION   __func__
 
#define LOGIT_STREAM(level)
 
#define LOGIT_STREAM_WITH_INDEX(level, index)
 
#define LOGIT_STREAM_TRACE()
 
#define LOGIT_STREAM_DEBUG()
 
#define LOGIT_STREAM_INFO()
 
#define LOGIT_STREAM_WARN()
 
#define LOGIT_STREAM_ERROR()
 
#define LOGIT_STREAM_FATAL()
 
#define LOGIT_STREAM_TRACE_TO(index)
 
#define LOGIT_STREAM_DEBUG_TO(index)
 
#define LOGIT_STREAM_INFO_TO(index)
 
#define LOGIT_STREAM_WARN_TO(index)
 
#define LOGIT_STREAM_ERROR_TO(index)
 
#define LOGIT_STREAM_FATAL_TO(index)
 
#define LOGIT_LOG_AND_RETURN_NOARGS(level, format)
 Logs a message without arguments.
 
#define LOGIT_LOG_AND_RETURN_NOARGS_WITH_INDEX(level, index, format)
 Logs a message to a specific logger without arguments.
 
#define LOGIT_LOG_AND_RETURN(level, format, arg_names, ...)
 Logs a message with arguments.
 
#define LOGIT_LOG_AND_RETURN_PRINT(level, arg_names, ...)
 Logs a message with arguments, but prints them without using a format string.
 
#define LOGIT_LOG_AND_RETURN_WITH_INDEX(level, index, format, arg_names, ...)
 Logs a message with arguments to a specific logger.
 
#define LOGIT_LOG_AND_RETURN_PRINT_WITH_INDEX(level, index, arg_names, ...)
 Logs a message with arguments to a specific logger, but prints them without using a format string.
 
#define LOGIT_TRACE(...)
 
#define LOGIT_TRACE0()
 
#define LOGIT_0TRACE()
 
#define LOGIT_0_TRACE()
 
#define LOGIT_NOARGS_TRACE()
 
#define LOGIT_FORMAT_TRACE(fmt, ...)
 
#define LOGIT_PRINT_TRACE(...)
 
#define LOGIT_PRINTF_TRACE(fmt, ...)
 
#define LOGIT_TRACE_TO(index, ...)
 
#define LOGIT_TRACE0_TO(index)
 
#define LOGIT_0TRACE_TO(index)
 
#define LOGIT_0_TRACE_TO(index)
 
#define LOGIT_NOARGS_TRACE_TO(index)
 
#define LOGIT_FORMAT_TRACE_TO(index, fmt, ...)
 
#define LOGIT_PRINT_TRACE_TO(index, ...)
 
#define LOGIT_PRINTF_TRACE_TO(index, fmt, ...)
 
#define LOGIT_INFO(...)
 
#define LOGIT_INFO0()
 
#define LOGIT_0INFO()
 
#define LOGIT_0_INFO()
 
#define LOGIT_NOARGS_INFO()
 
#define LOGIT_FORMAT_INFO(fmt, ...)
 
#define LOGIT_PRINT_INFO(...)
 
#define LOGIT_PRINTF_INFO(fmt, ...)
 
#define LOGIT_INFO_TO(index, ...)
 
#define LOGIT_INFO0_TO(index)
 
#define LOGIT_0INFO_TO(index)
 
#define LOGIT_0_INFO_TO(index)
 
#define LOGIT_NOARGS_INFO_TO(index)
 
#define LOGIT_FORMAT_INFO_TO(index, fmt, ...)
 
#define LOGIT_PRINT_INFO_TO(index, ...)
 
#define LOGIT_PRINTF_INFO_TO(index, fmt, ...)
 
#define LOGIT_DEBUG(...)
 
#define LOGIT_DEBUG0()
 
#define LOGIT_0DEBUG()
 
#define LOGIT_0_DEBUG()
 
#define LOGIT_NOARGS_DEBUG()
 
#define LOGIT_FORMAT_DEBUG(fmt, ...)
 
#define LOGIT_PRINT_DEBUG(...)
 
#define LOGIT_PRINTF_DEBUG(fmt, ...)
 
#define LOGIT_DEBUG_TO(index, ...)
 
#define LOGIT_DEBUG0_TO(index)
 
#define LOGIT_0DEBUG_TO(index)
 
#define LOGIT_0_DEBUG_TO(index)
 
#define LOGIT_NOARGS_DEBUG_TO(index)
 
#define LOGIT_FORMAT_DEBUG_TO(index, fmt, ...)
 
#define LOGIT_PRINT_DEBUG_TO(index, ...)
 
#define LOGIT_PRINTF_DEBUG_TO(index, fmt, ...)
 
#define LOGIT_WARN(...)
 
#define LOGIT_WARN0()
 
#define LOGIT_0WARN()
 
#define LOGIT_0_WARN()
 
#define LOGIT_NOARGS_WARN()
 
#define LOGIT_FORMAT_WARN(fmt, ...)
 
#define LOGIT_PRINT_WARN(...)
 
#define LOGIT_PRINTF_WARN(fmt, ...)
 
#define LOGIT_WARN_TO(index, ...)
 
#define LOGIT_WARN0_TO(index)
 
#define LOGIT_0WARN_TO(index)
 
#define LOGIT_0_WARN_TO(index)
 
#define LOGIT_NOARGS_WARN_TO(index)
 
#define LOGIT_FORMAT_WARN_TO(index, fmt, ...)
 
#define LOGIT_PRINT_WARN_TO(index, ...)
 
#define LOGIT_PRINTF_WARN_TO(index, fmt, ...)
 
#define LOGIT_ERROR(...)
 
#define LOGIT_ERROR0()
 
#define LOGIT_0ERROR()
 
#define LOGIT_0_ERROR()
 
#define LOGIT_NOARGS_ERROR()
 
#define LOGIT_FORMAT_ERROR(fmt, ...)
 
#define LOGIT_PRINT_ERROR(...)
 
#define LOGIT_PRINTF_ERROR(fmt, ...)
 
#define LOGIT_ERROR_TO(index, ...)
 
#define LOGIT_ERROR0_TO(index)
 
#define LOGIT_0ERROR_TO(index)
 
#define LOGIT_0_ERROR_TO(index)
 
#define LOGIT_NOARGS_ERROR_TO(index)
 
#define LOGIT_FORMAT_ERROR_TO(index, fmt, ...)
 
#define LOGIT_PRINT_ERROR_TO(index, ...)
 
#define LOGIT_PRINTF_ERROR_TO(index, fmt, ...)
 
#define LOGIT_FATAL(...)
 
#define LOGIT_FATAL0()
 
#define LOGIT_0FATAL()
 
#define LOGIT_0_FATAL()
 
#define LOGIT_NOARGS_FATAL()
 
#define LOGIT_FORMAT_FATAL(fmt, ...)
 
#define LOGIT_PRINT_FATAL(...)
 
#define LOGIT_PRINTF_FATAL(fmt, ...)
 
#define LOGIT_FATAL_TO(index, ...)
 
#define LOGIT_FATAL0_TO(index)
 
#define LOGIT_0FATAL_TO(index)
 
#define LOGIT_0_FATAL_TO(index)
 
#define LOGIT_NOARGS_FATAL_TO(index)
 
#define LOGIT_FORMAT_FATAL_TO(index, fmt, ...)
 
#define LOGIT_PRINT_FATAL_TO(index, ...)
 
#define LOGIT_PRINTF_FATAL_TO(index, fmt, ...)
 
#define LOGIT_TRACE_IF(condition, ...)
 
#define LOGIT_TRACE0_IF(condition)
 
#define LOGIT_0TRACE_IF(condition)
 
#define LOGIT_0_TRACE_IF(condition)
 
#define LOGIT_NOARGS_TRACE_IF(condition)
 
#define LOGIT_FORMAT_TRACE_IF(condition, fmt, ...)
 
#define LOGIT_PRINT_TRACE_IF(condition, fmt)
 
#define LOGIT_PRINTF_TRACE_IF(condition, fmt, ...)
 
#define LOGIT_INFO_IF(condition, ...)
 
#define LOGIT_INFO0_IF(condition)
 
#define LOGIT_0INFO_IF(condition)
 
#define LOGIT_0_INFO_IF(condition)
 
#define LOGIT_NOARGS_INFO_IF(condition)
 
#define LOGIT_FORMAT_INFO_IF(condition, fmt, ...)
 
#define LOGIT_PRINT_INFO_IF(condition, fmt)
 
#define LOGIT_PRINTF_INFO_IF(condition, fmt, ...)
 
#define LOGIT_DEBUG_IF(condition, ...)
 
#define LOGIT_DEBUG0_IF(condition)
 
#define LOGIT_0DEBUG_IF(condition)
 
#define LOGIT_0_DEBUG_IF(condition)
 
#define LOGIT_NOARGS_DEBUG_IF(condition)
 
#define LOGIT_FORMAT_DEBUG_IF(condition, fmt, ...)
 
#define LOGIT_PRINT_DEBUG_IF(condition, fmt)
 
#define LOGIT_PRINTF_DEBUG_IF(condition, fmt, ...)
 
#define LOGIT_WARN_IF(condition, ...)
 
#define LOGIT_WARN0_IF(condition)
 
#define LOGIT_0WARN_IF(condition)
 
#define LOGIT_0_WARN_IF(condition)
 
#define LOGIT_NOARGS_WARN_IF(condition)
 
#define LOGIT_FORMAT_WARN_IF(condition, fmt, ...)
 
#define LOGIT_PRINT_WARN_IF(condition, fmt)
 
#define LOGIT_PRINTF_WARN_IF(condition, fmt, ...)
 
#define LOGIT_ERROR_IF(condition, ...)
 
#define LOGIT_ERROR0_IF(condition)
 
#define LOGIT_0ERROR_IF(condition)
 
#define LOGIT_0_ERROR_IF(condition)
 
#define LOGIT_NOARGS_ERROR_IF(condition)
 
#define LOGIT_FORMAT_ERROR_IF(condition, fmt, ...)
 
#define LOGIT_PRINT_ERROR_IF(condition, fmt)
 
#define LOGIT_PRINTF_ERROR_IF(condition, fmt, ...)
 
#define LOGIT_FATAL_IF(condition, ...)
 
#define LOGIT_FATAL0_IF(condition)
 
#define LOGIT_0FATAL_IF(condition)
 
#define LOGIT_0_FATAL_IF(condition)
 
#define LOGIT_NOARGS_FATAL_IF(condition)
 
#define LOGIT_FORMAT_FATAL_IF(condition, fmt, ...)
 
#define LOGIT_PRINT_FATAL_IF(condition, fmt)
 
#define LOGIT_PRINTF_FATAL_IF(condition, fmt, ...)
 
#define LOGIT_ADD_LOGGER(logger_type, logger_args, formatter_type, formatter_args)
 Macro for adding a logger with a specific formatter.
 
#define LOGIT_ADD_LOGGER_SINGLE_MODE(logger_type, logger_args, formatter_type, formatter_args)
 Macro for adding a logger with a specific formatter in single_mode.
 
#define LOGIT_ADD_CONSOLE(pattern, async)
 Macro for adding a console logger with a specific pattern and mode.
 
#define LOGIT_ADD_CONSOLE_SINGLE_MODE(pattern, async)
 Macro for adding a console logger in single_mode with a specific pattern and mode.
 
#define LOGIT_ADD_CONSOLE_DEFAULT()
 Macro for adding the default console logger. This logger uses the default format pattern and asynchronous logging. This version uses new and std::unique_ptr for C++11 compatibility.
 
#define LOGIT_ADD_CONSOLE_DEFAULT_SINGLE_MODE()
 Macro for adding the default console logger in single_mode. In single_mode, the console logger can only be invoked using macros like LOGIT_TRACE_TO. This version uses new and std::unique_ptr for C++11 compatibility.
 
#define LOGIT_ADD_FILE_LOGGER(directory, async, auto_delete_days, pattern)
 Macro for adding a file logger with specific settings.
 
#define LOGIT_ADD_FILE_LOGGER_SINGLE_MODE(directory, async, auto_delete_days, pattern)
 Macro for adding a file logger in single_mode with specific settings.
 
#define LOGIT_ADD_FILE_LOGGER_DEFAULT()
 Macro for adding the default file logger. This logger writes logs to the default file path and deletes logs older than the default number of days. This version uses new and std::unique_ptr for C++11 compatibility.
 
#define LOGIT_ADD_FILE_LOGGER_DEFAULT_SINGLE_MODE()
 Macro for adding the default file logger in single_mode. In single_mode, the file logger can only be invoked using macros like LOGIT_TRACE_TO. This version uses new and std::unique_ptr for C++11 compatibility.
 
#define LOGIT_ADD_UNIQUE_FILE_LOGGER(directory, async, auto_delete_days, hash_length, pattern)
 Macro for adding a unique file logger with custom parameters.
 
#define LOGIT_ADD_UNIQUE_FILE_LOGGER_SINGLE_MODE(directory, async, auto_delete_days, hash_length, pattern)
 Macro for adding a unique file logger in single_mode with custom parameters.
 
#define LOGIT_ADD_UNIQUE_FILE_LOGGER_DEFAULT()
 Macro for adding the default unique file logger. This macro adds a UniqueFileLogger with default settings, which writes each log message to a new file. Log files are stored in the directory specified by LOGIT_UNIQUE_FILE_LOGGER_PATH, using asynchronous mode and auto-deleting logs older than the number of days specified by LOGIT_FILE_LOGGER_AUTO_DELETE_DAYS. This version uses new and std::unique_ptr for C++11 compatibility.
 
#define LOGIT_ADD_UNIQUE_FILE_LOGGER_DEFAULT_SINGLE_MODE()
 Macro for adding the default unique file logger in single_mode. This macro adds a UniqueFileLogger with default settings, which writes each log message to a new file. Log files are stored in the directory specified by LOGIT_UNIQUE_FILE_LOGGER_PATH, using asynchronous mode and auto-deleting logs older than the number of days specified by LOGIT_FILE_LOGGER_AUTO_DELETE_DAYS. In single_mode, the unique file logger can only be invoked using macros like LOGIT_TRACE_TO. This version uses new and std::unique_ptr for C++11 compatibility.
 
#define LOGIT_GET_STRING_PARAM(logger_index, param)
 Macro for retrieving a string parameter from a logger.
 
#define LOGIT_GET_INT_PARAM(logger_index, param)
 Macro for retrieving an integer parameter from a logger.
 
#define LOGIT_GET_FLOAT_PARAM(logger_index, param)
 Macro for retrieving a floating-point parameter from a logger.
 
#define LOGIT_GET_LAST_FILE_NAME(logger_index)
 Macro for retrieving the last log file name from a specific logger.
 
#define LOGIT_GET_LAST_FILE_PATH(logger_index)
 Macro for retrieving the last log file path from a specific logger.
 
#define LOGIT_GET_LAST_LOG_TIMESTAMP(logger_index)
 Macro for retrieving the timestamp of the last log from a specific logger.
 
#define LOGIT_GET_TIME_SINCE_LAST_LOG(logger_index)
 Macro for retrieving the time since the last log from a specific logger.
 
#define LOGIT_WAIT()
 Macro for waiting for all asynchronous loggers to finish processing.
 

Detailed Description

Provides various logging macros for different log levels and options.

Definition in file LogMacros.hpp.

Macro Definition Documentation

◆ _LOGIT_LOG_MACROS_HPP_INCLUDED

#define _LOGIT_LOG_MACROS_HPP_INCLUDED

Definition at line 3 of file LogMacros.hpp.

◆ LOGIT_0_DEBUG

#define LOGIT_0_DEBUG ( )
Value:
#define LOGIT_LOG_AND_RETURN_NOARGS(level, format)
Logs a message without arguments.
Definition LogMacros.hpp:65
@ LOG_LVL_DEBUG
Debug level logging.

Definition at line 177 of file LogMacros.hpp.

◆ LOGIT_0_DEBUG_IF

#define LOGIT_0_DEBUG_IF ( condition)
Value:

Definition at line 280 of file LogMacros.hpp.

◆ LOGIT_0_DEBUG_TO

#define LOGIT_0_DEBUG_TO ( index)
Value:
#define LOGIT_LOG_AND_RETURN_NOARGS_WITH_INDEX(level, index, format)
Logs a message to a specific logger without arguments.
Definition LogMacros.hpp:75

Definition at line 187 of file LogMacros.hpp.

◆ LOGIT_0_ERROR

#define LOGIT_0_ERROR ( )
Value:

Definition at line 217 of file LogMacros.hpp.

◆ LOGIT_0_ERROR_IF

#define LOGIT_0_ERROR_IF ( condition)
Value:

Definition at line 300 of file LogMacros.hpp.

◆ LOGIT_0_ERROR_TO

#define LOGIT_0_ERROR_TO ( index)

◆ LOGIT_0_FATAL

#define LOGIT_0_FATAL ( )
Value:

Definition at line 237 of file LogMacros.hpp.

◆ LOGIT_0_FATAL_IF

#define LOGIT_0_FATAL_IF ( condition)
Value:

Definition at line 310 of file LogMacros.hpp.

◆ LOGIT_0_FATAL_TO

#define LOGIT_0_FATAL_TO ( index)

◆ LOGIT_0_INFO

#define LOGIT_0_INFO ( )
Value:

Definition at line 157 of file LogMacros.hpp.

◆ LOGIT_0_INFO_IF

#define LOGIT_0_INFO_IF ( condition)
Value:

Definition at line 270 of file LogMacros.hpp.

◆ LOGIT_0_INFO_TO

#define LOGIT_0_INFO_TO ( index)

◆ LOGIT_0_TRACE

#define LOGIT_0_TRACE ( )
Value:

Definition at line 137 of file LogMacros.hpp.

◆ LOGIT_0_TRACE_IF

#define LOGIT_0_TRACE_IF ( condition)
Value:

Definition at line 260 of file LogMacros.hpp.

◆ LOGIT_0_TRACE_TO

#define LOGIT_0_TRACE_TO ( index)

◆ LOGIT_0_WARN

#define LOGIT_0_WARN ( )
Value:

Definition at line 197 of file LogMacros.hpp.

◆ LOGIT_0_WARN_IF

#define LOGIT_0_WARN_IF ( condition)
Value:

Definition at line 290 of file LogMacros.hpp.

◆ LOGIT_0_WARN_TO

#define LOGIT_0_WARN_TO ( index)

◆ LOGIT_0DEBUG

#define LOGIT_0DEBUG ( )

◆ LOGIT_0DEBUG_IF

#define LOGIT_0DEBUG_IF ( condition)
Value:

Definition at line 279 of file LogMacros.hpp.

◆ LOGIT_0DEBUG_TO

#define LOGIT_0DEBUG_TO ( index)

◆ LOGIT_0ERROR

#define LOGIT_0ERROR ( )

◆ LOGIT_0ERROR_IF

#define LOGIT_0ERROR_IF ( condition)
Value:

Definition at line 299 of file LogMacros.hpp.

◆ LOGIT_0ERROR_TO

#define LOGIT_0ERROR_TO ( index)

◆ LOGIT_0FATAL

#define LOGIT_0FATAL ( )

◆ LOGIT_0FATAL_IF

#define LOGIT_0FATAL_IF ( condition)
Value:

Definition at line 309 of file LogMacros.hpp.

◆ LOGIT_0FATAL_TO

#define LOGIT_0FATAL_TO ( index)

◆ LOGIT_0INFO

#define LOGIT_0INFO ( )

◆ LOGIT_0INFO_IF

#define LOGIT_0INFO_IF ( condition)
Value:

Definition at line 269 of file LogMacros.hpp.

◆ LOGIT_0INFO_TO

#define LOGIT_0INFO_TO ( index)

◆ LOGIT_0TRACE

#define LOGIT_0TRACE ( )

◆ LOGIT_0TRACE_IF

#define LOGIT_0TRACE_IF ( condition)
Value:

Definition at line 259 of file LogMacros.hpp.

◆ LOGIT_0TRACE_TO

#define LOGIT_0TRACE_TO ( index)

◆ LOGIT_0WARN

#define LOGIT_0WARN ( )

◆ LOGIT_0WARN_IF

#define LOGIT_0WARN_IF ( condition)
Value:

Definition at line 289 of file LogMacros.hpp.

◆ LOGIT_0WARN_TO

#define LOGIT_0WARN_TO ( index)

◆ LOGIT_ADD_CONSOLE

#define LOGIT_ADD_CONSOLE ( pattern,
async )
Value:
std::unique_ptr<logit::ConsoleLogger>(new logit::ConsoleLogger(async)), \
std::unique_ptr<logit::SimpleLogFormatter>(new logit::SimpleLogFormatter(pattern)), \
false)
Logger that outputs log messages to the console with optional color coding.
void add_logger(std::unique_ptr< ILogger > logger, std::unique_ptr< ILogFormatter > formatter, const bool &single_mode=false)
Adds a logger and its corresponding formatter.
Definition Logger.hpp:47
static Logger & get_instance()
Retrieves the singleton instance of Logger.
Definition Logger.hpp:26
A simple log formatter that formats log messages based on a user-defined pattern.

Macro for adding a console logger with a specific pattern and mode.

Parameters
patternThe format pattern for log messages.
asyncBoolean indicating whether logging should be asynchronous (true) or synchronous (false). This version uses new and std::unique_ptr for C++11 compatibility.

Definition at line 706 of file LogMacros.hpp.

◆ LOGIT_ADD_CONSOLE_DEFAULT

#define LOGIT_ADD_CONSOLE_DEFAULT ( )
Value:
std::unique_ptr<logit::ConsoleLogger>(new logit::ConsoleLogger(true)), \
std::unique_ptr<logit::SimpleLogFormatter>( \
false)
#define LOGIT_CONSOLE_PATTERN
Defines the default log pattern for the console logger. If LOGIT_CONSOLE_PATTERN is not defined,...

Macro for adding the default console logger. This logger uses the default format pattern and asynchronous logging. This version uses new and std::unique_ptr for C++11 compatibility.

Definition at line 726 of file LogMacros.hpp.

◆ LOGIT_ADD_CONSOLE_DEFAULT_SINGLE_MODE

#define LOGIT_ADD_CONSOLE_DEFAULT_SINGLE_MODE ( )
Value:
std::unique_ptr<logit::ConsoleLogger>(new logit::ConsoleLogger(true)), \
std::unique_ptr<logit::SimpleLogFormatter>( \
true)

Macro for adding the default console logger in single_mode. In single_mode, the console logger can only be invoked using macros like LOGIT_TRACE_TO. This version uses new and std::unique_ptr for C++11 compatibility.

Definition at line 736 of file LogMacros.hpp.

◆ LOGIT_ADD_CONSOLE_SINGLE_MODE

#define LOGIT_ADD_CONSOLE_SINGLE_MODE ( pattern,
async )
Value:
std::unique_ptr<logit::ConsoleLogger>(new logit::ConsoleLogger(async)), \
std::unique_ptr<logit::SimpleLogFormatter>(new logit::SimpleLogFormatter(pattern)), \
true)

Macro for adding a console logger in single_mode with a specific pattern and mode.

Parameters
patternThe format pattern for log messages.
asyncBoolean indicating whether logging should be asynchronous (true) or synchronous (false). In single_mode, the console logger can only be invoked using macros like LOGIT_TRACE_TO. This version uses new and std::unique_ptr for C++11 compatibility.

Definition at line 717 of file LogMacros.hpp.

◆ LOGIT_ADD_FILE_LOGGER

#define LOGIT_ADD_FILE_LOGGER ( directory,
async,
auto_delete_days,
pattern )
Value:
std::unique_ptr<logit::FileLogger>(new logit::FileLogger( \
directory, async, auto_delete_days)), \
std::unique_ptr<logit::SimpleLogFormatter>(new logit::SimpleLogFormatter(pattern)))
Logger that outputs log messages to files with date-based rotation and old file deletion.

Macro for adding a file logger with specific settings.

Parameters
directoryThe directory where log files will be stored.
asyncBoolean indicating whether logging should be asynchronous (true) or synchronous (false).
auto_delete_daysNumber of days after which old log files are deleted.
patternThe format pattern for log messages. This version uses new and std::unique_ptr for C++11 compatibility.

Definition at line 749 of file LogMacros.hpp.

◆ LOGIT_ADD_FILE_LOGGER_DEFAULT

#define LOGIT_ADD_FILE_LOGGER_DEFAULT ( )
Value:
std::unique_ptr<logit::FileLogger>(new logit::FileLogger( \
std::unique_ptr<logit::SimpleLogFormatter>( \
#define LOGIT_FILE_LOGGER_PATH
Defines the default directory path for log files. If LOGIT_FILE_LOGGER_PATH is not defined,...
#define LOGIT_FILE_LOGGER_AUTO_DELETE_DAYS
Defines the number of days after which old log files are deleted. If LOGIT_FILE_LOGGER_AUTO_DELETE_DA...
#define LOGIT_FILE_LOGGER_PATTERN
Defines the default log pattern for file-based loggers. If LOGIT_FILE_LOGGER_PATTERN is not defined,...

Macro for adding the default file logger. This logger writes logs to the default file path and deletes logs older than the default number of days. This version uses new and std::unique_ptr for C++11 compatibility.

Definition at line 772 of file LogMacros.hpp.

◆ LOGIT_ADD_FILE_LOGGER_DEFAULT_SINGLE_MODE

#define LOGIT_ADD_FILE_LOGGER_DEFAULT_SINGLE_MODE ( )
Value:
std::unique_ptr<logit::FileLogger>(new logit::FileLogger( \
std::unique_ptr<logit::SimpleLogFormatter>( \
true)

Macro for adding the default file logger in single_mode. In single_mode, the file logger can only be invoked using macros like LOGIT_TRACE_TO. This version uses new and std::unique_ptr for C++11 compatibility.

Definition at line 783 of file LogMacros.hpp.

◆ LOGIT_ADD_FILE_LOGGER_SINGLE_MODE

#define LOGIT_ADD_FILE_LOGGER_SINGLE_MODE ( directory,
async,
auto_delete_days,
pattern )
Value:
std::unique_ptr<logit::FileLogger>(new logit::FileLogger( \
directory, async, auto_delete_days)), \
std::unique_ptr<logit::SimpleLogFormatter>(new logit::SimpleLogFormatter(pattern)), \
true)

Macro for adding a file logger in single_mode with specific settings.

Parameters
directoryThe directory where log files will be stored.
asyncBoolean indicating whether logging should be asynchronous (true) or synchronous (false).
auto_delete_daysNumber of days after which old log files are deleted.
patternThe format pattern for log messages. In single_mode, the file logger can only be invoked using macros like LOGIT_TRACE_TO. This version uses new and std::unique_ptr for C++11 compatibility.

Definition at line 762 of file LogMacros.hpp.

◆ LOGIT_ADD_LOGGER

#define LOGIT_ADD_LOGGER ( logger_type,
logger_args,
formatter_type,
formatter_args )
Value:
std::unique_ptr<logger_type>(new logger_type logger_args), \
std::unique_ptr<formatter_type>(new formatter_type formatter_args), \
false)

Macro for adding a logger with a specific formatter.

Parameters
logger_typeThe type of logger (e.g., ConsoleLogger).
logger_argsArguments for the logger constructor, enclosed in parentheses.
formatter_typeThe type of formatter (e.g., SimpleLogFormatter).
formatter_argsArguments for the formatter constructor, enclosed in parentheses. This version uses new and std::unique_ptr for C++11 compatibility.

Definition at line 683 of file LogMacros.hpp.

◆ LOGIT_ADD_LOGGER_SINGLE_MODE

#define LOGIT_ADD_LOGGER_SINGLE_MODE ( logger_type,
logger_args,
formatter_type,
formatter_args )
Value:
std::unique_ptr<logger_type>(new logger_type logger_args), \
std::unique_ptr<formatter_type>(new formatter_type formatter_args), \
true)

Macro for adding a logger with a specific formatter in single_mode.

Parameters
logger_typeThe type of logger (e.g., ConsoleLogger).
logger_argsArguments for the logger constructor, enclosed in parentheses.
formatter_typeThe type of formatter (e.g., SimpleLogFormatter).
formatter_argsArguments for the formatter constructor, enclosed in parentheses. In single_mode, loggers can only be invoked explicitly using macros like LOGIT_TRACE_TO. This version uses new and std::unique_ptr for C++11 compatibility.

Definition at line 696 of file LogMacros.hpp.

◆ LOGIT_ADD_UNIQUE_FILE_LOGGER

#define LOGIT_ADD_UNIQUE_FILE_LOGGER ( directory,
async,
auto_delete_days,
hash_length,
pattern )
Value:
std::unique_ptr<logit::UniqueFileLogger>(new logit::UniqueFileLogger( \
directory, async, auto_delete_days, hash_length)), \
std::unique_ptr<logit::SimpleLogFormatter>(new logit::SimpleLogFormatter(pattern)))
Logger that writes each log message to a unique file with date-time and hash in the filename.

Macro for adding a unique file logger with custom parameters.

Parameters
directoryThe directory where log files will be stored.
asyncBoolean indicating whether logging should be asynchronous (true) or synchronous (false).
auto_delete_daysNumber of days after which old log files are deleted.
hash_lengthThe length of the hash to be appended to the log file name.
patternThe format pattern for log messages. This version uses new and std::unique_ptr for C++11 compatibility.

Definition at line 799 of file LogMacros.hpp.

◆ LOGIT_ADD_UNIQUE_FILE_LOGGER_DEFAULT

#define LOGIT_ADD_UNIQUE_FILE_LOGGER_DEFAULT ( )
Value:
std::unique_ptr<logit::UniqueFileLogger>(new logit::UniqueFileLogger( \
std::unique_ptr<logit::SimpleLogFormatter>(new logit::SimpleLogFormatter(LOGIT_FILE_LOGGER_PATTERN)))
#define LOGIT_UNIQUE_FILE_LOGGER_PATH
Defines the default directory path for unique log files. If LOGIT_UNIQUE_FILE_LOGGER_PATH is not defi...

Macro for adding the default unique file logger. This macro adds a UniqueFileLogger with default settings, which writes each log message to a new file. Log files are stored in the directory specified by LOGIT_UNIQUE_FILE_LOGGER_PATH, using asynchronous mode and auto-deleting logs older than the number of days specified by LOGIT_FILE_LOGGER_AUTO_DELETE_DAYS. This version uses new and std::unique_ptr for C++11 compatibility.

Definition at line 825 of file LogMacros.hpp.

◆ LOGIT_ADD_UNIQUE_FILE_LOGGER_DEFAULT_SINGLE_MODE

#define LOGIT_ADD_UNIQUE_FILE_LOGGER_DEFAULT_SINGLE_MODE ( )
Value:
std::unique_ptr<logit::UniqueFileLogger>(new logit::UniqueFileLogger( \
std::unique_ptr<logit::SimpleLogFormatter>(new logit::SimpleLogFormatter(LOGIT_FILE_LOGGER_PATTERN)), \
true)

Macro for adding the default unique file logger in single_mode. This macro adds a UniqueFileLogger with default settings, which writes each log message to a new file. Log files are stored in the directory specified by LOGIT_UNIQUE_FILE_LOGGER_PATH, using asynchronous mode and auto-deleting logs older than the number of days specified by LOGIT_FILE_LOGGER_AUTO_DELETE_DAYS. In single_mode, the unique file logger can only be invoked using macros like LOGIT_TRACE_TO. This version uses new and std::unique_ptr for C++11 compatibility.

Definition at line 838 of file LogMacros.hpp.

◆ LOGIT_ADD_UNIQUE_FILE_LOGGER_SINGLE_MODE

#define LOGIT_ADD_UNIQUE_FILE_LOGGER_SINGLE_MODE ( directory,
async,
auto_delete_days,
hash_length,
pattern )
Value:
std::unique_ptr<logit::UniqueFileLogger>(new logit::UniqueFileLogger( \
directory, async, auto_delete_days, hash_length)), \
std::unique_ptr<logit::SimpleLogFormatter>(new logit::SimpleLogFormatter(pattern)), \
true)

Macro for adding a unique file logger in single_mode with custom parameters.

Parameters
directoryThe directory where log files will be stored.
asyncBoolean indicating whether logging should be asynchronous (true) or synchronous (false).
auto_delete_daysNumber of days after which old log files are deleted.
hash_lengthThe length of the hash to be appended to the log file name.
patternThe format pattern for log messages. In single_mode, the unique file logger can only be invoked using macros like LOGIT_TRACE_TO. This version uses new and std::unique_ptr for C++11 compatibility.

Definition at line 813 of file LogMacros.hpp.

◆ LOGIT_DEBUG

#define LOGIT_DEBUG ( ...)
Value:
#define LOGIT_LOG_AND_RETURN(level, format, arg_names,...)
Logs a message with arguments.
Definition LogMacros.hpp:89

Definition at line 174 of file LogMacros.hpp.

◆ LOGIT_DEBUG0

#define LOGIT_DEBUG0 ( )

◆ LOGIT_DEBUG0_IF

#define LOGIT_DEBUG0_IF ( condition)
Value:

Definition at line 278 of file LogMacros.hpp.

◆ LOGIT_DEBUG0_TO

#define LOGIT_DEBUG0_TO ( index)

◆ LOGIT_DEBUG_IF

#define LOGIT_DEBUG_IF ( condition,
... )
Value:
if (condition) LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_DEBUG, {}, #__VA_ARGS__, __VA_ARGS__)

Definition at line 277 of file LogMacros.hpp.

◆ LOGIT_DEBUG_TO

#define LOGIT_DEBUG_TO ( index,
... )
Value:
#define LOGIT_LOG_AND_RETURN_WITH_INDEX(level, index, format, arg_names,...)
Logs a message with arguments to a specific logger.

Definition at line 184 of file LogMacros.hpp.

◆ LOGIT_ERROR

#define LOGIT_ERROR ( ...)
Value:

Definition at line 214 of file LogMacros.hpp.

◆ LOGIT_ERROR0

#define LOGIT_ERROR0 ( )

◆ LOGIT_ERROR0_IF

#define LOGIT_ERROR0_IF ( condition)
Value:

Definition at line 298 of file LogMacros.hpp.

◆ LOGIT_ERROR0_TO

#define LOGIT_ERROR0_TO ( index)

◆ LOGIT_ERROR_IF

#define LOGIT_ERROR_IF ( condition,
... )
Value:
if (condition) LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_ERROR, {}, #__VA_ARGS__, __VA_ARGS__)

Definition at line 297 of file LogMacros.hpp.

◆ LOGIT_ERROR_TO

#define LOGIT_ERROR_TO ( index,
... )
Value:

Definition at line 224 of file LogMacros.hpp.

◆ LOGIT_FATAL

#define LOGIT_FATAL ( ...)
Value:

Definition at line 234 of file LogMacros.hpp.

◆ LOGIT_FATAL0

#define LOGIT_FATAL0 ( )

◆ LOGIT_FATAL0_IF

#define LOGIT_FATAL0_IF ( condition)
Value:

Definition at line 308 of file LogMacros.hpp.

◆ LOGIT_FATAL0_TO

#define LOGIT_FATAL0_TO ( index)

◆ LOGIT_FATAL_IF

#define LOGIT_FATAL_IF ( condition,
... )
Value:
if (condition) LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_FATAL, {}, #__VA_ARGS__, __VA_ARGS__)

Definition at line 307 of file LogMacros.hpp.

◆ LOGIT_FATAL_TO

#define LOGIT_FATAL_TO ( index,
... )
Value:

Definition at line 244 of file LogMacros.hpp.

◆ LOGIT_FORMAT_DEBUG

#define LOGIT_FORMAT_DEBUG ( fmt,
... )
Value:
LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_DEBUG, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 179 of file LogMacros.hpp.

◆ LOGIT_FORMAT_DEBUG_IF

#define LOGIT_FORMAT_DEBUG_IF ( condition,
fmt,
... )
Value:
if (condition) LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_DEBUG, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 282 of file LogMacros.hpp.

◆ LOGIT_FORMAT_DEBUG_TO

#define LOGIT_FORMAT_DEBUG_TO ( index,
fmt,
... )
Value:
LOGIT_LOG_AND_RETURN_WITH_INDEX(logit::LogLevel::LOG_LVL_DEBUG, index, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 189 of file LogMacros.hpp.

◆ LOGIT_FORMAT_ERROR

#define LOGIT_FORMAT_ERROR ( fmt,
... )
Value:
LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_ERROR, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 219 of file LogMacros.hpp.

◆ LOGIT_FORMAT_ERROR_IF

#define LOGIT_FORMAT_ERROR_IF ( condition,
fmt,
... )
Value:
if (condition) LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_ERROR, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 302 of file LogMacros.hpp.

◆ LOGIT_FORMAT_ERROR_TO

#define LOGIT_FORMAT_ERROR_TO ( index,
fmt,
... )
Value:
LOGIT_LOG_AND_RETURN_WITH_INDEX(logit::LogLevel::LOG_LVL_ERROR, index, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 229 of file LogMacros.hpp.

◆ LOGIT_FORMAT_FATAL

#define LOGIT_FORMAT_FATAL ( fmt,
... )
Value:
LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_FATAL, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 239 of file LogMacros.hpp.

◆ LOGIT_FORMAT_FATAL_IF

#define LOGIT_FORMAT_FATAL_IF ( condition,
fmt,
... )
Value:
if (condition) LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_FATAL, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 312 of file LogMacros.hpp.

◆ LOGIT_FORMAT_FATAL_TO

#define LOGIT_FORMAT_FATAL_TO ( index,
fmt,
... )
Value:
LOGIT_LOG_AND_RETURN_WITH_INDEX(logit::LogLevel::LOG_LVL_FATAL, index, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 249 of file LogMacros.hpp.

◆ LOGIT_FORMAT_INFO

#define LOGIT_FORMAT_INFO ( fmt,
... )
Value:
LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_INFO, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 159 of file LogMacros.hpp.

◆ LOGIT_FORMAT_INFO_IF

#define LOGIT_FORMAT_INFO_IF ( condition,
fmt,
... )
Value:
if (condition) LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_INFO, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 272 of file LogMacros.hpp.

◆ LOGIT_FORMAT_INFO_TO

#define LOGIT_FORMAT_INFO_TO ( index,
fmt,
... )
Value:
LOGIT_LOG_AND_RETURN_WITH_INDEX(logit::LogLevel::LOG_LVL_INFO, index, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 169 of file LogMacros.hpp.

◆ LOGIT_FORMAT_TRACE

#define LOGIT_FORMAT_TRACE ( fmt,
... )
Value:
LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_TRACE, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 139 of file LogMacros.hpp.

◆ LOGIT_FORMAT_TRACE_IF

#define LOGIT_FORMAT_TRACE_IF ( condition,
fmt,
... )
Value:
if (condition) LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_TRACE, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 262 of file LogMacros.hpp.

◆ LOGIT_FORMAT_TRACE_TO

#define LOGIT_FORMAT_TRACE_TO ( index,
fmt,
... )
Value:
LOGIT_LOG_AND_RETURN_WITH_INDEX(logit::LogLevel::LOG_LVL_TRACE, index, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 149 of file LogMacros.hpp.

◆ LOGIT_FORMAT_WARN

#define LOGIT_FORMAT_WARN ( fmt,
... )
Value:
LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_WARN, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 199 of file LogMacros.hpp.

◆ LOGIT_FORMAT_WARN_IF

#define LOGIT_FORMAT_WARN_IF ( condition,
fmt,
... )
Value:
if (condition) LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_WARN, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 292 of file LogMacros.hpp.

◆ LOGIT_FORMAT_WARN_TO

#define LOGIT_FORMAT_WARN_TO ( index,
fmt,
... )
Value:
LOGIT_LOG_AND_RETURN_WITH_INDEX(logit::LogLevel::LOG_LVL_WARN, index, fmt, #__VA_ARGS__, __VA_ARGS__)

Definition at line 209 of file LogMacros.hpp.

◆ LOGIT_FUNCTION

#define LOGIT_FUNCTION   __func__

Definition at line 14 of file LogMacros.hpp.

◆ LOGIT_GET_FLOAT_PARAM

#define LOGIT_GET_FLOAT_PARAM ( logger_index,
param )
Value:
double get_float_param(const int &logger_index, const LoggerParam &param) const
Retrieves a floating-point parameter from the logger.
Definition Logger.hpp:103

Macro for retrieving a floating-point parameter from a logger.

Parameters
logger_indexThe index of the logger.
paramThe logger parameter to retrieve.
Returns
A double representing the requested parameter.

Definition at line 866 of file LogMacros.hpp.

◆ LOGIT_GET_INT_PARAM

#define LOGIT_GET_INT_PARAM ( logger_index,
param )
Value:
int64_t get_int_param(const int &logger_index, const LoggerParam &param) const
Retrieves an integer parameter from the logger.
Definition Logger.hpp:91

Macro for retrieving an integer parameter from a logger.

Parameters
logger_indexThe index of the logger.
paramThe logger parameter to retrieve.
Returns
An integer representing the requested parameter.

Definition at line 859 of file LogMacros.hpp.

◆ LOGIT_GET_LAST_FILE_NAME

#define LOGIT_GET_LAST_FILE_NAME ( logger_index)
Value:
std::string get_string_param(const int &logger_index, const LoggerParam &param) const
Retrieves a string parameter from the logger.
Definition Logger.hpp:79
@ LastFileName
The name of the last file written to.

Macro for retrieving the last log file name from a specific logger.

Parameters
logger_indexThe index of the logger.
Returns
The name of the last file written to.

Definition at line 872 of file LogMacros.hpp.

◆ LOGIT_GET_LAST_FILE_PATH

#define LOGIT_GET_LAST_FILE_PATH ( logger_index)
Value:
@ LastFilePath
The full path of the last file written to.

Macro for retrieving the last log file path from a specific logger.

Parameters
logger_indexThe index of the logger.
Returns
The full path of the last file written to.

Definition at line 878 of file LogMacros.hpp.

◆ LOGIT_GET_LAST_LOG_TIMESTAMP

#define LOGIT_GET_LAST_LOG_TIMESTAMP ( logger_index)
Value:

Macro for retrieving the timestamp of the last log from a specific logger.

Parameters
logger_indexThe index of the logger.
Returns
The timestamp of the last log.

Definition at line 884 of file LogMacros.hpp.

◆ LOGIT_GET_STRING_PARAM

#define LOGIT_GET_STRING_PARAM ( logger_index,
param )
Value:

Macro for retrieving a string parameter from a logger.

Parameters
logger_indexThe index of the logger.
paramThe logger parameter to retrieve.
Returns
A string representing the requested parameter.

Definition at line 852 of file LogMacros.hpp.

◆ LOGIT_GET_TIME_SINCE_LAST_LOG

#define LOGIT_GET_TIME_SINCE_LAST_LOG ( logger_index)
Value:
@ TimeSinceLastLog
The time elapsed since the last log in seconds.

Macro for retrieving the time since the last log from a specific logger.

Parameters
logger_indexThe index of the logger.
Returns
The time elapsed since the last log in seconds.

Definition at line 890 of file LogMacros.hpp.

◆ LOGIT_INFO

#define LOGIT_INFO ( ...)
Value:
LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_INFO, {}, #__VA_ARGS__, __VA_ARGS__)

Definition at line 154 of file LogMacros.hpp.

◆ LOGIT_INFO0

#define LOGIT_INFO0 ( )

◆ LOGIT_INFO0_IF

#define LOGIT_INFO0_IF ( condition)
Value:

Definition at line 268 of file LogMacros.hpp.

◆ LOGIT_INFO0_TO

#define LOGIT_INFO0_TO ( index)

◆ LOGIT_INFO_IF

#define LOGIT_INFO_IF ( condition,
... )
Value:
if (condition) LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_INFO, {}, #__VA_ARGS__, __VA_ARGS__)

Definition at line 267 of file LogMacros.hpp.

◆ LOGIT_INFO_TO

#define LOGIT_INFO_TO ( index,
... )
Value:
LOGIT_LOG_AND_RETURN_WITH_INDEX(logit::LogLevel::LOG_LVL_INFO, index, {}, #__VA_ARGS__, __VA_ARGS__)

Definition at line 164 of file LogMacros.hpp.

◆ LOGIT_LOG_AND_RETURN

#define LOGIT_LOG_AND_RETURN ( level,
format,
arg_names,
... )
Value:
logit::make_relative(__FILE__, LOGIT_BASE_PATH), __LINE__, \
LOGIT_FUNCTION, format, arg_names, -1, false}, __VA_ARGS__)
#define LOGIT_BASE_PATH
Defines the base path used for log file paths. If LOGIT_BASE_PATH is not defined or is empty ({}...
#define LOGIT_CURRENT_TIMESTAMP_MS()
Macro to get the current timestamp in milliseconds. If LOGIT_CURRENT_TIMESTAMP_MS is not defined,...
#define LOGIT_FUNCTION
Definition LogMacros.hpp:14
auto log_and_return(const LogRecord &record, Ts &&... args) -> decltype(std::forward_as_tuple(std::forward< Ts >(args)...))
Logs the message and returns a tuple of arguments.
Definition Logger.hpp:117
Stores log metadata and content.
Definition LogRecord.hpp:15

Logs a message with arguments.

Parameters
levelThe log level.
formatThe log message format.
arg_namesThe names of the arguments.
...The arguments to log.

Definition at line 89 of file LogMacros.hpp.

◆ LOGIT_LOG_AND_RETURN_NOARGS

#define LOGIT_LOG_AND_RETURN_NOARGS ( level,
format )
Value:
logit::make_relative(__FILE__, LOGIT_BASE_PATH), \
__LINE__, LOGIT_FUNCTION, format, {}, -1, false})

Logs a message without arguments.

Parameters
levelThe log level.
formatThe log message format.

Definition at line 65 of file LogMacros.hpp.

◆ LOGIT_LOG_AND_RETURN_NOARGS_WITH_INDEX

#define LOGIT_LOG_AND_RETURN_NOARGS_WITH_INDEX ( level,
index,
format )
Value:
logit::make_relative(__FILE__, LOGIT_BASE_PATH), __LINE__, \
LOGIT_FUNCTION, format, {}, index})

Logs a message to a specific logger without arguments.

Parameters
levelThe log level.
indexThe index of the logger to log to.
formatThe log message format.

Definition at line 75 of file LogMacros.hpp.

◆ LOGIT_LOG_AND_RETURN_PRINT

#define LOGIT_LOG_AND_RETURN_PRINT ( level,
arg_names,
... )
Value:
logit::make_relative(__FILE__, LOGIT_BASE_PATH), __LINE__, \
LOGIT_FUNCTION, {}, arg_names, -1, true}, __VA_ARGS__)

Logs a message with arguments, but prints them without using a format string.

Parameters
levelThe log level.
arg_namesThe names of the arguments.
...The arguments to log.

This macro logs the raw arguments without applying any formatting to them.

Definition at line 100 of file LogMacros.hpp.

◆ LOGIT_LOG_AND_RETURN_PRINT_WITH_INDEX

#define LOGIT_LOG_AND_RETURN_PRINT_WITH_INDEX ( level,
index,
arg_names,
... )
Value:
logit::make_relative(__FILE__, LOGIT_BASE_PATH), __LINE__, \
LOGIT_FUNCTION, {}, arg_names, index, true}, __VA_ARGS__)

Logs a message with arguments to a specific logger, but prints them without using a format string.

Parameters
levelThe log level.
indexThe index of the logger to log to.
arg_namesThe names of the arguments.
...The arguments to log.

This macro logs the raw arguments without applying any formatting to them to a specific logger.

Definition at line 124 of file LogMacros.hpp.

◆ LOGIT_LOG_AND_RETURN_WITH_INDEX

#define LOGIT_LOG_AND_RETURN_WITH_INDEX ( level,
index,
format,
arg_names,
... )
Value:
logit::make_relative(__FILE__, LOGIT_BASE_PATH), __LINE__, \
LOGIT_FUNCTION, format, arg_names, index, false}, __VA_ARGS__)

Logs a message with arguments to a specific logger.

Parameters
levelThe log level.
indexThe index of the logger to log to.
formatThe log message format.
arg_namesThe names of the arguments.
...The arguments to log.

Definition at line 112 of file LogMacros.hpp.

◆ LOGIT_NOARGS_DEBUG

#define LOGIT_NOARGS_DEBUG ( )

◆ LOGIT_NOARGS_DEBUG_IF

#define LOGIT_NOARGS_DEBUG_IF ( condition)
Value:

Definition at line 281 of file LogMacros.hpp.

◆ LOGIT_NOARGS_DEBUG_TO

#define LOGIT_NOARGS_DEBUG_TO ( index)

◆ LOGIT_NOARGS_ERROR

#define LOGIT_NOARGS_ERROR ( )

◆ LOGIT_NOARGS_ERROR_IF

#define LOGIT_NOARGS_ERROR_IF ( condition)
Value:

Definition at line 301 of file LogMacros.hpp.

◆ LOGIT_NOARGS_ERROR_TO

#define LOGIT_NOARGS_ERROR_TO ( index)

◆ LOGIT_NOARGS_FATAL

#define LOGIT_NOARGS_FATAL ( )

◆ LOGIT_NOARGS_FATAL_IF

#define LOGIT_NOARGS_FATAL_IF ( condition)
Value:

Definition at line 311 of file LogMacros.hpp.

◆ LOGIT_NOARGS_FATAL_TO

#define LOGIT_NOARGS_FATAL_TO ( index)

◆ LOGIT_NOARGS_INFO

#define LOGIT_NOARGS_INFO ( )

◆ LOGIT_NOARGS_INFO_IF

#define LOGIT_NOARGS_INFO_IF ( condition)
Value:

Definition at line 271 of file LogMacros.hpp.

◆ LOGIT_NOARGS_INFO_TO

#define LOGIT_NOARGS_INFO_TO ( index)

◆ LOGIT_NOARGS_TRACE

#define LOGIT_NOARGS_TRACE ( )

◆ LOGIT_NOARGS_TRACE_IF

#define LOGIT_NOARGS_TRACE_IF ( condition)
Value:

Definition at line 261 of file LogMacros.hpp.

◆ LOGIT_NOARGS_TRACE_TO

#define LOGIT_NOARGS_TRACE_TO ( index)

◆ LOGIT_NOARGS_WARN

#define LOGIT_NOARGS_WARN ( )

◆ LOGIT_NOARGS_WARN_IF

#define LOGIT_NOARGS_WARN_IF ( condition)
Value:

Definition at line 291 of file LogMacros.hpp.

◆ LOGIT_NOARGS_WARN_TO

#define LOGIT_NOARGS_WARN_TO ( index)

◆ LOGIT_PRINT_DEBUG

#define LOGIT_PRINT_DEBUG ( ...)
Value:
#define LOGIT_LOG_AND_RETURN_PRINT(level, arg_names,...)
Logs a message with arguments, but prints them without using a format string.

Definition at line 180 of file LogMacros.hpp.

◆ LOGIT_PRINT_DEBUG_IF

#define LOGIT_PRINT_DEBUG_IF ( condition,
fmt )
Value:

Definition at line 283 of file LogMacros.hpp.

◆ LOGIT_PRINT_DEBUG_TO

#define LOGIT_PRINT_DEBUG_TO ( index,
... )
Value:
#define LOGIT_LOG_AND_RETURN_PRINT_WITH_INDEX(level, index, arg_names,...)
Logs a message with arguments to a specific logger, but prints them without using a format string.

Definition at line 190 of file LogMacros.hpp.

◆ LOGIT_PRINT_ERROR

#define LOGIT_PRINT_ERROR ( ...)
Value:

Definition at line 220 of file LogMacros.hpp.

◆ LOGIT_PRINT_ERROR_IF

#define LOGIT_PRINT_ERROR_IF ( condition,
fmt )
Value:

Definition at line 303 of file LogMacros.hpp.

◆ LOGIT_PRINT_ERROR_TO

#define LOGIT_PRINT_ERROR_TO ( index,
... )
Value:

Definition at line 230 of file LogMacros.hpp.

◆ LOGIT_PRINT_FATAL

#define LOGIT_PRINT_FATAL ( ...)
Value:

Definition at line 240 of file LogMacros.hpp.

◆ LOGIT_PRINT_FATAL_IF

#define LOGIT_PRINT_FATAL_IF ( condition,
fmt )
Value:

Definition at line 313 of file LogMacros.hpp.

◆ LOGIT_PRINT_FATAL_TO

#define LOGIT_PRINT_FATAL_TO ( index,
... )
Value:

Definition at line 250 of file LogMacros.hpp.

◆ LOGIT_PRINT_INFO

#define LOGIT_PRINT_INFO ( ...)
Value:

Definition at line 160 of file LogMacros.hpp.

◆ LOGIT_PRINT_INFO_IF

#define LOGIT_PRINT_INFO_IF ( condition,
fmt )
Value:

Definition at line 273 of file LogMacros.hpp.

◆ LOGIT_PRINT_INFO_TO

#define LOGIT_PRINT_INFO_TO ( index,
... )
Value:

Definition at line 170 of file LogMacros.hpp.

◆ LOGIT_PRINT_TRACE

#define LOGIT_PRINT_TRACE ( ...)
Value:

Definition at line 140 of file LogMacros.hpp.

◆ LOGIT_PRINT_TRACE_IF

#define LOGIT_PRINT_TRACE_IF ( condition,
fmt )
Value:

Definition at line 263 of file LogMacros.hpp.

◆ LOGIT_PRINT_TRACE_TO

#define LOGIT_PRINT_TRACE_TO ( index,
... )
Value:

Definition at line 150 of file LogMacros.hpp.

◆ LOGIT_PRINT_WARN

#define LOGIT_PRINT_WARN ( ...)
Value:

Definition at line 200 of file LogMacros.hpp.

◆ LOGIT_PRINT_WARN_IF

#define LOGIT_PRINT_WARN_IF ( condition,
fmt )
Value:

Definition at line 293 of file LogMacros.hpp.

◆ LOGIT_PRINT_WARN_TO

#define LOGIT_PRINT_WARN_TO ( index,
... )
Value:

Definition at line 210 of file LogMacros.hpp.

◆ LOGIT_PRINTF_DEBUG

#define LOGIT_PRINTF_DEBUG ( fmt,
... )
Value:
std::string format(const char *fmt,...)
Formats a string according to the specified format.
Definition format.hpp:27

Definition at line 181 of file LogMacros.hpp.

◆ LOGIT_PRINTF_DEBUG_IF

#define LOGIT_PRINTF_DEBUG_IF ( condition,
fmt,
... )
Value:

Definition at line 284 of file LogMacros.hpp.

◆ LOGIT_PRINTF_DEBUG_TO

#define LOGIT_PRINTF_DEBUG_TO ( index,
fmt,
... )
Value:

Definition at line 191 of file LogMacros.hpp.

◆ LOGIT_PRINTF_ERROR

#define LOGIT_PRINTF_ERROR ( fmt,
... )
Value:

Definition at line 221 of file LogMacros.hpp.

◆ LOGIT_PRINTF_ERROR_IF

#define LOGIT_PRINTF_ERROR_IF ( condition,
fmt,
... )
Value:

Definition at line 304 of file LogMacros.hpp.

◆ LOGIT_PRINTF_ERROR_TO

#define LOGIT_PRINTF_ERROR_TO ( index,
fmt,
... )
Value:

Definition at line 231 of file LogMacros.hpp.

◆ LOGIT_PRINTF_FATAL

#define LOGIT_PRINTF_FATAL ( fmt,
... )
Value:

Definition at line 241 of file LogMacros.hpp.

◆ LOGIT_PRINTF_FATAL_IF

#define LOGIT_PRINTF_FATAL_IF ( condition,
fmt,
... )
Value:

Definition at line 314 of file LogMacros.hpp.

◆ LOGIT_PRINTF_FATAL_TO

#define LOGIT_PRINTF_FATAL_TO ( index,
fmt,
... )
Value:

Definition at line 251 of file LogMacros.hpp.

◆ LOGIT_PRINTF_INFO

#define LOGIT_PRINTF_INFO ( fmt,
... )
Value:

Definition at line 161 of file LogMacros.hpp.

◆ LOGIT_PRINTF_INFO_IF

#define LOGIT_PRINTF_INFO_IF ( condition,
fmt,
... )
Value:

Definition at line 274 of file LogMacros.hpp.

◆ LOGIT_PRINTF_INFO_TO

#define LOGIT_PRINTF_INFO_TO ( index,
fmt,
... )
Value:

Definition at line 171 of file LogMacros.hpp.

◆ LOGIT_PRINTF_TRACE

#define LOGIT_PRINTF_TRACE ( fmt,
... )
Value:

Definition at line 141 of file LogMacros.hpp.

◆ LOGIT_PRINTF_TRACE_IF

#define LOGIT_PRINTF_TRACE_IF ( condition,
fmt,
... )
Value:

Definition at line 264 of file LogMacros.hpp.

◆ LOGIT_PRINTF_TRACE_TO

#define LOGIT_PRINTF_TRACE_TO ( index,
fmt,
... )
Value:

Definition at line 151 of file LogMacros.hpp.

◆ LOGIT_PRINTF_WARN

#define LOGIT_PRINTF_WARN ( fmt,
... )
Value:

Definition at line 201 of file LogMacros.hpp.

◆ LOGIT_PRINTF_WARN_IF

#define LOGIT_PRINTF_WARN_IF ( condition,
fmt,
... )
Value:

Definition at line 294 of file LogMacros.hpp.

◆ LOGIT_PRINTF_WARN_TO

#define LOGIT_PRINTF_WARN_TO ( index,
fmt,
... )
Value:

Definition at line 211 of file LogMacros.hpp.

◆ LOGIT_STREAM

#define LOGIT_STREAM ( level)
Value:
A stream-based logger that collects log messages using the << operator.
Definition LogStream.hpp:18
std::string make_relative(const std::string &file_path, const std::string &base_path)
Computes the relative path from base_path to file_path.

Definition at line 20 of file LogMacros.hpp.

◆ LOGIT_STREAM_DEBUG

#define LOGIT_STREAM_DEBUG ( )
Value:

Definition at line 27 of file LogMacros.hpp.

◆ LOGIT_STREAM_DEBUG_TO

#define LOGIT_STREAM_DEBUG_TO ( index)
Value:
#define LOGIT_STREAM_WITH_INDEX(level, index)
Definition LogMacros.hpp:23

Definition at line 34 of file LogMacros.hpp.

◆ LOGIT_STREAM_ERROR

#define LOGIT_STREAM_ERROR ( )
Value:

Definition at line 30 of file LogMacros.hpp.

◆ LOGIT_STREAM_ERROR_TO

#define LOGIT_STREAM_ERROR_TO ( index)
Value:

Definition at line 37 of file LogMacros.hpp.

◆ LOGIT_STREAM_FATAL

#define LOGIT_STREAM_FATAL ( )
Value:

Definition at line 31 of file LogMacros.hpp.

◆ LOGIT_STREAM_FATAL_TO

#define LOGIT_STREAM_FATAL_TO ( index)
Value:

Definition at line 38 of file LogMacros.hpp.

◆ LOGIT_STREAM_INFO

#define LOGIT_STREAM_INFO ( )
Value:

Definition at line 28 of file LogMacros.hpp.

◆ LOGIT_STREAM_INFO_TO

#define LOGIT_STREAM_INFO_TO ( index)
Value:

Definition at line 35 of file LogMacros.hpp.

◆ LOGIT_STREAM_TRACE

#define LOGIT_STREAM_TRACE ( )
Value:

Definition at line 26 of file LogMacros.hpp.

◆ LOGIT_STREAM_TRACE_TO

#define LOGIT_STREAM_TRACE_TO ( index)
Value:

Definition at line 33 of file LogMacros.hpp.

◆ LOGIT_STREAM_WARN

#define LOGIT_STREAM_WARN ( )
Value:

Definition at line 29 of file LogMacros.hpp.

◆ LOGIT_STREAM_WARN_TO

#define LOGIT_STREAM_WARN_TO ( index)
Value:

Definition at line 36 of file LogMacros.hpp.

◆ LOGIT_STREAM_WITH_INDEX

#define LOGIT_STREAM_WITH_INDEX ( level,
index )
Value:

Definition at line 23 of file LogMacros.hpp.

◆ LOGIT_TRACE

#define LOGIT_TRACE ( ...)
Value:

Definition at line 134 of file LogMacros.hpp.

◆ LOGIT_TRACE0

#define LOGIT_TRACE0 ( )

◆ LOGIT_TRACE0_IF

#define LOGIT_TRACE0_IF ( condition)
Value:

Definition at line 258 of file LogMacros.hpp.

◆ LOGIT_TRACE0_TO

#define LOGIT_TRACE0_TO ( index)

◆ LOGIT_TRACE_IF

#define LOGIT_TRACE_IF ( condition,
... )
Value:
if (condition) LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_TRACE, {}, #__VA_ARGS__, __VA_ARGS__)

Definition at line 257 of file LogMacros.hpp.

◆ LOGIT_TRACE_TO

#define LOGIT_TRACE_TO ( index,
... )
Value:

Definition at line 144 of file LogMacros.hpp.

◆ LOGIT_WAIT

#define LOGIT_WAIT ( )
Value:
void wait()
Waits for all asynchronous loggers to finish processing.
Definition Logger.hpp:35

Macro for waiting for all asynchronous loggers to finish processing.

Definition at line 894 of file LogMacros.hpp.

◆ LOGIT_WARN

#define LOGIT_WARN ( ...)
Value:
LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_WARN, {}, #__VA_ARGS__, __VA_ARGS__)

Definition at line 194 of file LogMacros.hpp.

◆ LOGIT_WARN0

#define LOGIT_WARN0 ( )

◆ LOGIT_WARN0_IF

#define LOGIT_WARN0_IF ( condition)
Value:

Definition at line 288 of file LogMacros.hpp.

◆ LOGIT_WARN0_TO

#define LOGIT_WARN0_TO ( index)

◆ LOGIT_WARN_IF

#define LOGIT_WARN_IF ( condition,
... )
Value:
if (condition) LOGIT_LOG_AND_RETURN(logit::LogLevel::LOG_LVL_WARN, {}, #__VA_ARGS__, __VA_ARGS__)

Definition at line 287 of file LogMacros.hpp.

◆ LOGIT_WARN_TO

#define LOGIT_WARN_TO ( index,
... )
Value:
LOGIT_LOG_AND_RETURN_WITH_INDEX(logit::LogLevel::LOG_LVL_WARN, index, {}, #__VA_ARGS__, __VA_ARGS__)

Definition at line 204 of file LogMacros.hpp.