XFusion API v1.3.0
载入中...
搜索中...
未找到
xf_log.h 文件参考

xf_log 系统日志。 更多...

#include "xf_log_config_internel.h"
#include <stddef.h>
#include <stdint.h>
xf_log.h 的引用(Include)关系图:

浏览源代码.

宏定义

#define XF_LOG_LVL_NONE   (0)
 
#define XF_LOG_LVL_USER   (1)
 
#define XF_LOG_LVL_ERROR   (2)
 
#define XF_LOG_LVL_WARN   (3)
 
#define XF_LOG_LVL_INFO   (4)
 
#define XF_LOG_LVL_DEBUG   (5)
 
#define XF_LOG_LVL_VERBOSE   (6)
 
#define xf_log_level(level, tag, fmt, ...)   xf_log(level, tag, __FILE__, __LINE__, __func__, fmt XF_LOG_NEWLINE, ##__VA_ARGS__)
 

函数

void xf_log_set_filter_enable (int log_obj_id)
 启用过滤器
 
void xf_log_set_filter_disable (int log_obj_id)
 禁用过滤器
 
void xf_log_set_filter_colorful_enable (int log_obj_id)
 开启彩色显示
 
void xf_log_set_filter_colorful_disable (int log_obj_id)
 关闭彩色显示
 
void xf_log_set_filter_is_blacklist (int log_obj_id)
 设置过滤器为黑名单(其内容将被过滤)
 
void xf_log_set_filter_is_whitelist (int log_obj_id)
 设置过滤器为白名单(仅其内容将被暴露)
 
void xf_log_set_filter_tag (int log_obj_id, const char *tag)
 设置过滤器的标签过滤
 
void xf_log_set_filter_level (int log_obj_id, uint8_t level)
 设置过滤器的等级过滤
 
void xf_log_set_filter_file (int log_obj_id, const char *file)
 设置过滤器的文件过滤
 
void xf_log_set_info_level (int log_obj_id, uint8_t level)
 显示文件函数等信息的最小等级
 
void xf_log_set_time_func (xf_log_time_func_t log_time_func)
 设置log的时间戳打印函数
 
size_t xf_log (uint8_t level, const char *tag, const char *file, uint32_t line, const char *func, const char *fmt,...)
 log打印函数
 
size_t xf_log_printf (const char *format,...)
 朴实无华的打印函数
 
typedef void(* xf_log_out_t) (const char *str, size_t len, void *arg)
 log 输出后端原型。
 
typedef uint32_t(* xf_log_time_func_t) (void)
 log 时间戳原型。
 
int xf_log_register_obj (xf_log_out_t out_func, void *user_args)
 注册log后端是输出到哪里,其最大值受到 XF_LOG_OBJ_MAX 的限制
 

详细描述

xf_log 系统日志。

作者
cangyu (sky.k.nosp@m.irto.nosp@m.@qq.c.nosp@m.om)
版本
0.1
日期
2024-10-09

在文件 xf_log.h 中定义.

类型定义说明

◆ xf_log_out_t

typedef void(* xf_log_out_t) (const char *str, size_t len, void *arg)

log 输出后端原型。

参数
str交由后端输出的字符串。
len字符串的长度。
arg用户参数,见 xf_log_register_obj.

在文件 xf_log.h92 行定义.

◆ xf_log_time_func_t

typedef uint32_t(* xf_log_time_func_t) (void)

log 时间戳原型。

返回
提供给 log 用的时间戳。

在文件 xf_log.h99 行定义.

函数说明

◆ xf_log_register_obj()

int xf_log_register_obj ( xf_log_out_t  out_func,
void *  user_args 
)

注册log后端是输出到哪里,其最大值受到 XF_LOG_OBJ_MAX 的限制

参数
out_func后端输出函数, 如果减少IO操作,可以考虑使用异步缓冲
user_args传入的参数,会在 out_func 中被调用
返回
int -1:失败, >=0:注册成功后返回的id

在文件 xf_log.c118 行定义.