x_log_debug
Emit a debug-level log message.
#define x_log_debug(logger, fmt, ...) \
x_log_message((logger), XLOG_LEVEL_DEBUG, XLOG_COLOR_BLUE, XLOG_COLOR_BLACK, XLOG_DEFAULT, __FILE__, __LINE__, __func__, (fmt), ##__VA_ARGS__)
Emit a debug-level log message.
#define x_log_debug(logger, fmt, ...) \
x_log_message((logger), XLOG_LEVEL_DEBUG, XLOG_COLOR_BLUE, XLOG_COLOR_BLACK, XLOG_DEFAULT, __FILE__, __LINE__, __func__, (fmt), ##__VA_ARGS__)
Emit an error-level log message.
#define x_log_error(logger, fmt, ...) \
x_log_message((logger), XLOG_LEVEL_ERROR, XLOG_COLOR_RED, XLOG_COLOR_BLACK, XLOG_DEFAULT, __FILE__, __LINE__, __func__, (fmt), ##__VA_ARGS__)
Emit a fatal log message and trigger a break action. Calls X_LOG_BREAK() after logging.
#define x_log_fatal(logger, fmt, ...) \
do\
{\
x_log_message((logger), XLOG_LEVEL_FATAL, XLOG_COLOR_WHITE, XLOG_COLOR_RED, XLOG_DEFAULT, __FILE__, __LINE__, __func__, (fmt), ##__VA_ARGS__);\
X_LOG_BREAK();\
}while(0)
Emit an informational log message with timestamp.
#define x_log_info(logger, fmt, ...) \
x_log_message((logger), XLOG_LEVEL_INFO, XLOG_COLOR_WHITE, XLOG_COLOR_BLACK, XLOG_TIMESTAMP, __FILE__, __LINE__, __func__, (fmt), ##__VA_ARGS__)
Emit a formatted log message with full context information.
void x_log_message(
XLogger *logger,
XLogLevel level,
XLogColor fg,
XLogColor bg,
XLogComponent components,
const char *file,
int line,
const char *func,
const char *fmt,
...
);
XLogger *loggerXLogLevel levelXLogColor fgXLogColor bgXLogComponent componentsconst char *fileint lineconst char *funcconst char *fmtEmit a formatted log message with full context information, overriding the console output stream. If console output is enabled (XLOG_OUTPUT_CONSOLE), the message is written to `out` when non-NULL. If `out` is NULL, the logger's default console stream is used. File output configured via x_log_init() is still honored when XLOG_OUTPUT_FILE is enabled.
void x_log_message_to(
XLogger *logger,
FILE *out,
XLogLevel level,
XLogColor fg,
XLogColor bg,
XLogComponent components,
const char *file,
int line,
const char *func,
const char *fmt,
...
);
Emit a formatted log message without source context.
void x_log_print(
XLogger *logger,
XLogLevel level,
const char *fmt,
...
);
XLogger *loggerXLogLevel levelconst char *fmtEmit a raw log message with explicit formatting and components. Automatically injects source file, line, and function information.
#define x_log_raw(logger, out, level, fg, bg, components, fmt, ...) \
x_log_message_to((logger), (out), (level), (fg), (bg), (components), __FILE__, __LINE__, __func__, (fmt), ##__VA_ARGS__)
Emit a warning-level log message.
#define x_log_warning(logger, fmt, ...) \
x_log_message((logger), XLOG_LEVEL_WARNING, XLOG_COLOR_YELLOW, XLOG_COLOR_BLACK, XLOG_DEFAULT, __FILE__, __LINE__, __func__, (fmt), ##__VA_ARGS__)