--- title: "日志路径配置" date: 2026-02-22 lastmod: 2026-02-22 description: "配置日志文件存储路径的配置项说明" tags: ["路径配置", "日志管理", "基础配置"] summary: "配置项作用 # path.logs 配置项指定 Easysearch 日志文件的存储目录路径。日志文件包括集群运行日志、慢查询日志、访问日志等。 配置项类型 # 该配置项为静态配置,需要在启动时设置,修改后需要重启节点才能生效。 默认值 # $ES_HOME/logs(Easysearch 安装目录下的 logs 文件夹) 是否必需 # 可选配置项(有默认值) 配置格式 # # 默认配置(不设置,使用默认路径) # path.logs: logs # 指定绝对路径 path.logs: /var/log/easysearch # 指定相对路径(相对于 Easysearch 安装目录) path.logs: logs # Windows 路径 path.logs: "C:/ProgramData/easysearch/logs" 日志文件类型 # path.logs 目录下的主要文件: path.logs/ ├── easysearch.log # 主日志文件 ├── easysearch_deprecation.log # 弃用警告日志 ├── easysearch_access.log # 访问日志(如启用) ├── easysearch_audit.log # 审计日志(如启用) ├── easysearch_slowlog.json # 慢查询日志 └── gc." --- ## 配置项作用 `path.logs` 配置项指定 Easysearch 日志文件的存储目录路径。日志文件包括集群运行日志、慢查询日志、访问日志等。 ## 配置项类型 该配置项为**静态配置**,需要在启动时设置,修改后需要重启节点才能生效。 ## 默认值 ``` $ES_HOME/logs(Easysearch 安装目录下的 logs 文件夹) ``` ## 是否必需 **可选配置项**(有默认值) ## 配置格式 ```yaml # 默认配置(不设置,使用默认路径) # path.logs: logs # 指定绝对路径 path.logs: /var/log/easysearch # 指定相对路径(相对于 Easysearch 安装目录) path.logs: logs # Windows 路径 path.logs: "C:/ProgramData/easysearch/logs" ``` ## 日志文件类型 `path.logs` 目录下的主要文件: ``` path.logs/ ├── easysearch.log # 主日志文件 ├── easysearch_deprecation.log # 弃用警告日志 ├── easysearch_access.log # 访问日志(如启用) ├── easysearch_audit.log # 审计日志(如启用) ├── easysearch_slowlog.json # 慢查询日志 └── gc.log # JVM 垃圾回收日志 ``` ## 使用场景 ### 1. 默认配置(开发/测试) ```yaml # 不设置,使用默认路径 # path.logs: logs ``` 日志文件位于 `$ES_HOME/logs`。 ### 2. 生产环境(集中存储) ```yaml path.logs: /var/log/easysearch ``` 便于日志收集和集中管理。 ### 3. 多实例部署 ```yaml # 实例 1 path.logs: /var/log/easysearch/node1 # 实例 2 path.logs: /var/log/easysearch/node2 ``` 每个实例使用独立的日志目录。 ### 4. Windows 环境 ```yaml path.logs: "C:/easysearch/logs" ``` ## 目录权限要求 ```bash # 确保 Easysearch 用户有写入权限 sudo chown -R easysearch:easysearch /var/log/easysearch sudo chmod -R 755 /var/log/easysearch ``` ## 推荐设置建议 | 环境 | 推荐路径 | 说明 | |-----|---------|------| | 开发 | `$ES_HOME/logs` | 使用默认值 | | 测试 | `/var/log/easysearch` | 集中管理 | | 生产 | `/var/log/easysearch` 或 `/data/logs/easysearch` | 便于日志收集 | ## 完整配置示例 ```yaml # ==================== 生产环境配置 ==================== # 数据路径 path.data: /data/easysearch/data # 日志路径 path.logs: /var/log/easysearch # 其他路径 path.repo: /backup/easysearch ``` ## 日志轮转配置 日志文件默认按大小轮转,可在 `log4j2.properties` 中配置: ```properties # 日志文件大小 appender.rolling.strategy.type = SizeBasedTriggeringPolicy appender.rolling.strategy.size = 1GB # 保留的日志文件数量 appender.rolling.strategy.type = DefaultRolloverStrategy approller.rolling.strategy.max = 10 ``` ## 日志级别配置 在 `log4j2.properties` 中配置日志级别: ```properties # 主日志级别 logger.action.name = org.easysearch.action logger.action.level = info # 设置为 DEBUG 进行故障排查 logger.action.level = debug ``` ## 监控日志大小 ```bash # 查看日志目录大小 du -sh /var/log/easysearch # 查看各个日志文件大小 ls -lh /var/log/easysearch/ # 查看最近的日志 tail -f /var/log/easysearch/easysearch.log ``` ## 日志收集集成 **与 ELK 集成:** ```yaml # Filebeat 配置示例 filebeat.inputs: - type: log enabled: true paths: - /var/log/easysearch/*.log fields: service: easysearch ``` ## 常见问题 **问题 1:日志目录无写入权限** ``` Permission denied: /var/log/easysearch ``` **解决方案:** ```bash sudo mkdir -p /var/log/easysearch sudo chown -R easysearch:easysearch /var/log/easysearch sudo chmod -R 755 /var/log/easysearch ``` **问题 2:日志文件过大** **解决方案:** 1. 调整日志轮转策略 2. 定期清理旧日志 3. 配置日志收集到远程存储 **问题 3:无法写入日志** **可能原因:** - 目录不存在 - 磁盘空间不足 - 权限不足 **解决方案:** ```bash # 检查目录 ls -la /var/log/easysearch # 检查磁盘空间 df -h # 创建目录并设置权限 sudo mkdir -p /var/log/easysearch sudo chown easysearch:easysearch /var/log/easysearch ``` ## 注意事项 1. **静态配置**:修改路径需要重启节点 2. **磁盘空间**:确保日志目录有足够空间 3. **权限要求**:Easysearch 用户需要有读写权限 4. **日志轮转**:配置日志轮转避免磁盘填满 5. **备份考虑**:日志通常不需要备份,但可用于审计 6. **敏感信息**:日志可能包含敏感信息,注意保护