summaryrefslogtreecommitdiff
path: root/src/log.h
blob: c3c73a2ed4d7de22eff709535b02ffb47e83a90b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#ifndef UMBRELLA_LOG_H
#define UMBRELLA_LOG_H

#include <stdio.h>

typedef enum {
    LOG_DEBUG = 0,
    LOG_INFO  = 1,
    LOG_WARN  = 2,
    LOG_ERROR = 3,
} LogLevel;

void log_init(const char *path, LogLevel min_level);
void log_close(void);
void log_write(LogLevel level, const char *fmt, ...);

#define log_debug(...) log_write(LOG_DEBUG, __VA_ARGS__)
#define log_info(...)  log_write(LOG_INFO,  __VA_ARGS__)
#define log_warn(...)  log_write(LOG_WARN,  __VA_ARGS__)
#define log_error(...) log_write(LOG_ERROR, __VA_ARGS__)

#endif /* UMBRELLA_LOG_H */