143 _In_
LogFileData* logfile, _In_ LogDest* deferdest);
164 uint32 batchid, _In_opt_
void* userdata);
struct LogDest LogDest
Opaque handle to a registered log destination.
void logfileBatchFunc(uint32 batchid, void *userdata)
void logfileCloseFunc(void *userdata)
LogDest * logfileRegisterWithDefer(int maxlevel, LogCategory *catfilter, LogFileData *logfile, LogDest *deferdest)
LogDest * logfileRegister(int maxlevel, LogCategory *catfilter, LogFileData *logfile)
struct LogFileData LogFileData
Opaque handle for file logging state.
LOG_FLAGS
Formatting flags for log file output.
LOG_ROTATE_MODE
Log rotation mode.
void logfileMsgFunc(int level, LogCategory *cat, int64 timestamp, strref msg, uint32 batchid, void *userdata)
LogFileData * logfileCreate(VFS *vfs, strref filename, LogFileConfig *config)
LOG_DATE_FORMATS
Timestamp format options for log file output.
@ LOG_BracketCategory
Enclose category in brackets [Network].
@ LOG_OmitLevel
Do not include severity level.
@ LOG_BracketLevel
Enclose log level in brackets [INFO].
@ LOG_IncludeCategory
Include category name in output.
@ LOG_AddColon
Add colon after the prefix.
@ LOG_JustifyLevel
Make level a fixed-width column.
@ LOG_CategoryFirst
Category between date and level instead of at end.
@ LOG_ShortLevel
Use single-character level abbreviations.
@ LOG_LocalTime
Use local time instead of UTC.
@ LOG_RotateTime
Rotate at specified time of day.
@ LOG_RotateSize
Rotate when file exceeds rotateSize bytes.
@ LOG_DateISO
ISO 8601 format: "2026-01-02 15:04:05".
@ LOG_DateSyslog
Syslog format: "Jan 2 15:04:05".
@ LOG_DateISOCompact
Compact ISO: "20260102 150405".
@ LOG_DateISOCompactMsec
Compact ISO with milliseconds: "20260102 150405.123".
@ LOG_DateNCSA
NCSA Common Log format: "02/Jan/2026:15:04:05 +0000".
uint8 rotateHour
Hour for LOG_RotateTime mode (0-23)
int64 rotateKeepTime
Minimum time to keep rotated files (0 = no time limit)
uint32 flags
Bitwise OR of LOG_FLAGS values.
int rotateMode
Rotation mode from LOG_ROTATE_MODE enum.
int rotateKeepFiles
Minimum number of rotated files to keep (0 = unlimited)
uint8 rotateMinute
Minute for LOG_RotateTime mode (0-59)
int64 rotateSize
Size threshold for LOG_RotateSize mode (bytes)
uint8 rotateSecond
Second for LOG_RotateTime mode (0-59)
int dateFormat
Date format from LOG_DATE_FORMATS enum.
int spacing
Number of spaces between prefix and message (default: 2)