Dev (#19)
Some checks failed
test on Windows / test (push) Has been cancelled
test on Linux / test (push) Failing after 7m1s
Some checks failed
test on Windows / test (push) Has been cancelled
test on Linux / test (push) Failing after 7m1s
* #feat 增强Fatal级别的底色,修改logging类的方法 * 更新版本号 * 加入test脚本 * fix:conanfile * test action * 修复错别字 * add test on windows action * fix test on windows action * fix action on windows * fix * fix 内存分配错误 * fix msvc 不支持中文注释,删除中文注释 * test on windows and test chinese char * ersion 0.2.4 * feature:根据文件大小分割日志 * fix:内存泄露 * fix:使用char偏移单位 * add english brief * 修改api函数名,加入Default关键字,减除歧义 * Multiple substring interceptors * 更新版本号 * #fix 拦截器对level参数无效 * fix * #将拦截器改名为过滤器,更加接近职能 * 更新自述文件 * 更新一些自述文件
This commit is contained in:
@@ -11,6 +11,7 @@
|
||||
|
||||
#define FILE_NAME_MAX_SIZE 50
|
||||
|
||||
// 文件日志处理器的扩展
|
||||
typedef struct log_Handler_file_ex_s {
|
||||
unsigned int file_size;
|
||||
unsigned int file_size_max;
|
||||
@@ -57,6 +58,7 @@ log_Handler *loggingHandlerFile(const char *name, unsigned int max_size) {
|
||||
log_Handler *handler = NULL;
|
||||
log_Handler_file_ex_t *handler_ex = NULL;
|
||||
|
||||
/// 获取未写满于设置最大文件大小的文件名
|
||||
do {
|
||||
sprintf(new_file_name, "%s_%d.log", name, suffix++);
|
||||
fp = fopen(new_file_name, "at");
|
||||
|
||||
@@ -16,9 +16,9 @@
|
||||
#define RESET "\033[0m"
|
||||
#define CYAN "\033[0;36m"
|
||||
|
||||
#define LOG_BUFFER_SIZE 1024
|
||||
#define LOG_BUFFER_SIZE 1024 // 日志缓冲区大小,单个日志长度不能超过该值
|
||||
|
||||
Logger *G_LOGGER = NULL;
|
||||
static Logger *G_LOGGER = NULL; // 全局日志对象,唯一实例
|
||||
|
||||
/**
|
||||
* @brief 为日志添加一个handler
|
||||
@@ -38,6 +38,10 @@ static bool addHandler(log_Handler *handler) {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 为日志添加一个filter
|
||||
* @param filter 过滤器对象
|
||||
*/
|
||||
static bool addFilter(log_filter *filter) {
|
||||
if (G_LOGGER == NULL || filter == NULL) {
|
||||
return false;
|
||||
@@ -58,6 +62,13 @@ static bool addFilter(log_filter *filter) {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 输出到handler
|
||||
* @param handler 处理器对象
|
||||
* @param level 日志等级
|
||||
* @param color 应用的颜色
|
||||
* @param message 日志内容
|
||||
*/
|
||||
static void output_to_handler(log_Handler *handler,
|
||||
char *level,
|
||||
const char *color,
|
||||
|
||||
Reference in New Issue
Block a user