设置日志文件的目录组织模式,支持按日期、模块、级别、小时等多种方式组织日志文件。
int32_t LogSetDirMode(int64_t instance, int64_t loggerHandle, int32_t dirMode)
| 参数名 | 类型 | 说明 |
|---|
| instance | int64_t | OLAPlug对象的指针,由 CreateCOLAPlugInterFace 接口生成 |
| loggerHandle | int64_t | 日志实例句柄(0 表示默认实例) |
| dirMode | int32_t | 目录模式(可位或组合),见 LogDirMode 枚举 |
| 枚举值 | 值 | 说明 |
|---|
| OLA_LOG_DIR_FLAT | 0 | 平铺模式(所有日志在同一目录) |
| OLA_LOG_DIR_BY_DATE | 1 | 按日期分目录 (2026-02-27/) |
| OLA_LOG_DIR_BY_MODULE | 2 | 按模块分目录 (network/) |
| OLA_LOG_DIR_BY_LEVEL | 4 | 按级别分目录 (error/) |
| OLA_LOG_DIR_BY_HOUR | 8 | 按小时分目录 (2026-02-27-14/) |
int result = LogSetDirMode(instance, 0, OLA_LOG_DIR_FLAT);
int result = LogSetDirMode(instance, 0, OLA_LOG_DIR_BY_DATE);
int result = LogSetDirMode(instance, 0, OLA_LOG_DIR_BY_DATE | OLA_LOG_DIR_BY_MODULE);
int result = LogSetDirMode(instance, 0, OLA_LOG_DIR_BY_DATE | OLA_LOG_DIR_BY_MODULE | OLA_LOG_DIR_BY_LEVEL);
int result = LogSetDirMode(instance, 0, OLA_LOG_DIR_BY_HOUR);
- 默认值:
OLA_LOG_DIR_FLAT (0) - 平铺模式 - 可以使用位或运算(
|)组合多种模式 - 使用
OLA_LOG_DIR_BY_MODULE 时需要先调用 LogSetModuleName 设置模块名称 - 修改后立即生效,如果日志系统已初始化,会自动重新初始化
- 目录结构的顺序为:日期 → 模块 → 级别 → 小时