// e_logger.h #ifndef E_LOGGER_H #define E_LOGGER_H #include #include #include // 日志级别定义 typedef enum { LOG_DEBUG, LOG_INFO, LOG_WARN, LOG_ERROR } LogLevel; // 初始化日志系统 void log_init(void); // 设置日志级别 void log_set_level(LogLevel level); // 设置日志输出文件 void log_set_output(FILE *output); // 启用/禁用UDP日志发送 void log_set_udp_enabled(bool enabled); // 设置UDP日志接收方IP地址,成功返回true bool log_set_udp_dest_ip(const char *ip); // 打印日志 void log_print(LogLevel level, const char *file, int line, const char *format, ...); // 清理日志资源 void log_cleanup(void); // 删除日志文件 void log_delete_files(void); // 日志宏定义(自动添加文件名和行号) #define LOGD(format, ...) log_print(LOG_DEBUG, __FILE__, __LINE__, format, ##__VA_ARGS__) #define LOGI(format, ...) log_print(LOG_INFO, __FILE__, __LINE__, format, ##__VA_ARGS__) #define LOGW(format, ...) log_print(LOG_WARN, __FILE__, __LINE__, format, ##__VA_ARGS__) #define LOGE(format, ...) log_print(LOG_ERROR, __FILE__, __LINE__, format, ##__VA_ARGS__) #endif // E_LOGGER_H