CX Framework
Cross-platform C utility framework
Loading...
Searching...
No Matches
log.h File Reference

Core logging system API. More...

#include <cx/cx.h>
#include <cx/string/strbase.h>
#include <cx/stype/stvar.h>

Go to the source code of this file.

Data Structures

struct  LogCategory
 

Macros

#define logStr(level, str)   _logStr_##level(LOG_##level, LogDefault, str)
 
#define logStrC(level, cat, str)   _logStr_##level(LOG_##level, cat, str)
 
#define logFmt(level, fmt, ...)
 
#define logFmtC(level, cat, fmt, ...)
 

Typedefs

typedef struct LogCategory LogCategory
 
typedef struct LogDest LogDest
 Opaque handle to a registered log destination.
 
typedef void(* LogDestMsg) (int level, LogCategory *cat, int64 timestamp, strref msg, uint32 batchid, void *userdata)
 
typedef void(* LogDestBatchDone) (uint32 batchid, void *userdata)
 
typedef void(* LogDestClose) (void *userdata)
 

Enumerations

enum  LOG_LEVEL_ENUM {
  LOG_Fatal , LOG_Error , LOG_Warn , LOG_Notice ,
  LOG_Info , LOG_Verbose , LOG_Diag , LOG_Debug ,
  LOG_Trace , LOG_Count
}
 

Functions

LogCategorylogCreateCat (strref name, bool priv)
 
LogDest * logRegisterDest (int maxlevel, LogCategory *catfilter, LogDestMsg msgfunc, LogDestBatchDone batchfunc, LogDestClose closefunc, void *userdata)
 
bool logUnregisterDest (LogDest *dhandle)
 
void logFlush (void)
 
void logShutdown (void)
 
void logRestart (void)
 
void logBatchBegin (void)
 
void logBatchEnd (void)
 

Variables

strref LogLevelNames []
 Array of log level names as strings (e.g., "Fatal", "Error", etc.)
 
strref LogLevelAbbrev []
 Array of single-character log level abbreviations (e.g., "F", "E", etc.)
 
LogCategoryLogDefault
 Default log category used when no category is specified.
 

Detailed Description

Core logging system API.

Definition in file log.h.