cwist
Modern C web framework with libttak runtime
Loading...
Searching...
No Matches
logger.h
Go to the documentation of this file.
1
6#ifndef __CWIST_LOGGER_H__
7#define __CWIST_LOGGER_H__
8
9#include <stddef.h>
10#include <stdbool.h>
11#include <stdarg.h>
12
19
25
32cwist_logger *cwist_logger_create(const char *name);
33
38
48
52void cwist_logger_set_colors(cwist_logger *log, bool enabled);
53
62void cwist_logger_log(cwist_logger *log, cwist_log_level_t level, const char *fmt, ...);
63
67void cwist_logger_debug(cwist_logger *log, const char *fmt, ...);
68
72void cwist_logger_info(cwist_logger *log, const char *fmt, ...);
73
77void cwist_logger_warn(cwist_logger *log, const char *fmt, ...);
78
82void cwist_logger_error(cwist_logger *log, const char *fmt, ...);
83
105bool cwist_log_async_start(size_t buffer_bytes);
106
110void cwist_log_async_flush(void);
111
115void cwist_log_async_stop(void);
116
120bool cwist_log_async_active(void);
121
124#endif
void cwist_logger_warn(cwist_logger *log, const char *fmt,...)
Write a warning message.
Definition logger.c:176
cwist_logger * cwist_logger_create(const char *name)
Create a logger.
Definition logger.c:32
void cwist_logger_error(cwist_logger *log, const char *fmt,...)
Write an error message.
Definition logger.c:187
cwist_log_level_t
Definition logger.h:13
@ CWIST_LOG_INFO
Definition logger.h:15
@ CWIST_LOG_ERROR
Definition logger.h:17
@ CWIST_LOG_WARN
Definition logger.h:16
@ CWIST_LOG_DEBUG
Definition logger.h:14
void cwist_logger_log(cwist_logger *log, cwist_log_level_t level, const char *fmt,...)
Write a log message.
Definition logger.c:143
void cwist_log_async_flush(void)
Block until every line queued so far has been written.
Definition log_async.c:221
bool cwist_log_async_start(size_t buffer_bytes)
Start the background log writer.
Definition log_async.c:176
void cwist_logger_set_colors(cwist_logger *log, bool enabled)
Enable or disable colored output.
Definition logger.c:66
void cwist_log_async_stop(void)
Write out queued lines, stop the writer and return to synchronous output.
Definition log_async.c:229
bool cwist_log_async_active(void)
Whether the background log writer is active.
Definition log_async.c:256
void cwist_logger_info(cwist_logger *log, const char *fmt,...)
Write an info message.
Definition logger.c:165
void cwist_logger_set_level(cwist_logger *log, cwist_log_level_t level)
Set the minimum log level.
Definition logger.c:58
void cwist_logger_destroy(cwist_logger *log)
Destroy a logger.
Definition logger.c:48
void cwist_logger_debug(cwist_logger *log, const char *fmt,...)
Write a debug message.
Definition logger.c:154
cwist_log_level_t level
Definition logger.h:22
bool use_colors
Definition logger.h:23
char * name
Definition logger.h:21