日志管理接口

头文件:include/tl_interface.h

相关示例代码:examples\cpp\ex_log_download.cpp

1. log_download_by_quantity - 保存日志到文件

方法:Result log_download_by_quantity(SOCKETFD socketFd, int counts, const std::string& directoryPath);

功能描述:从控制器下载指定数量的日志条目并保存到本地文件。

参数:

  • socketFd:已连接的句柄。
  • counts:文件数量
  • directoryPath:目录的完整路径,字符串格式

返回值:

  • 0:成功。
  • 非 0:失败。

使用示例:

C++
    // 下载日志

    std::cout << "[INFO] 开始下载日志..." << std::endl;
    auto ret = log_download_by_quantity(socket_fd, count, log_path);
    if (ret != Result::SUCCESS) {
        std::cerr << "[ERROR] 日志下载失败,程序退出!" << std::endl;
        return -1;
    }
    std::cout << "[INFO] 日志下载完成" << std::endl;

2. set_log_level - 设置日志级别

方法:void set_log_level(LogLevel level);

功能描述:设置 SDK 本地库的全局日志输出级别。该接口为本地配置,无需连接控制器(不依赖 socket_fd);设置后仅输出级别 ≥ 当前级别的日志,默认级别为 INFO(一般)。

参数:

  • level:日志级别,取值见下表 LogLevel 枚举。

LogLevel 枚举说明:

枚举值 数值 说明
DEBUG 0 调试:输出全部日志(最详细),用于问题排查
INFO 1 一般:输出常规信息(系统默认级别)
WARNING 2 警告:仅输出警告及以上级别的日志
ERROR 3 错误:仅输出错误级别的日志(最精简)

返回值:

  • 无(void,不返回任何值)。

使用示例:

C++
    // 仅输出警告和错误信息(减少日志量)
    tl::set_log_level(tl::WARNING);

    // 输出全部日志(最详细,便于调试)
    tl::set_log_level(tl::DEBUG);