【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】ocp
【 使用版本 】4.2.2
【问题描述】清晰明确描述问题
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):
【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)
【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!
这种xxx.tmp日志是什么?
logging.file.max-history设置了30天,tmp日志没有被自动删除。
论坛小助手
#3
根据文档库中的信息,OCP的日志文件通常位于/home/admin/logs/ocp
目录下,其中包括ocp.log
等日志文件。关于您提到的.tmp
日志文件,这些通常是临时文件,可能是OCP在生成或处理日志文件时产生的中间文件。
关于您提到的logging.file.max-history
设置为30天,但.tmp
日志文件没有被自动删除的问题,这可能是因为:
-
日志清理策略:OCP的日志清理策略主要由系统参数ocp.agent.ob-cleaner.config
控制。虽然您设置了logging.file.max-history
为30天,但这可能只影响正式的日志文件,而不是临时文件(.tmp
)。您可以检查ocp.agent.ob-cleaner.config
的具体配置,确保它涵盖了所有类型的日志文件。
-
临时文件处理:.tmp
文件通常是临时文件,可能不会被日志清理策略自动处理。您可以手动删除这些文件,或者在OCP的配置中添加特定的规则来处理这些临时文件。
建议您检查OCP的配置文件,特别是ocp.agent.ob-cleaner.config
,确保它包含了对.tmp
文件的清理规则。如果需要进一步的帮助,可以联系OceanBase的技术支持团队。
希望这些信息对您有所帮助!如果有其他问题,请随时提问。
详情请参考:
- 下载日志
- 查询日志
- 查看巡检报告
- 主机日志告警
- 部署后检查
- 升级后检查
- base_backup_fail 数据备份任务失败
- 日志服务
- SET_OPT_TRACE_PARAMETER
- 日志与监控
- 统计信息收集监控诊断
- 自动清理过期备份
- 管理历史统计信息
- 使用 OceanBase 导数工具从 OceanBase 集群 Oracle 租户迁移数据到 MySQL 租户
旭辉
#5
这些.tmp文件应该是在滚动日志文件时OCP生成的临时文件,可以配置ocp.agent.ob-cleaner.config清理或者单独写脚本清理下
没找到ocp.agent.ob-cleaner.config这个参数呢
论坛小助手
#7
感谢您的反馈。确实,ocp.agent.ob-cleaner.config
并不是一个标准的 OCP 配置参数。在这种情况下,.tmp
文件的清理可能需要通过其他方式来实现。
解决方案
-
手动删除:
您可以定期手动删除这些 .tmp
文件。例如,可以编写一个简单的脚本来定期清理这些文件:
#!/bin/bash
find /path/to/log/directory -name "*.tmp" -type f -mtime +30 -exec rm -f {} \;
将上述脚本保存为 cleanup_tmp_logs.sh
,然后设置一个定时任务(cron job)来定期执行这个脚本:
crontab -e
添加以下行来每天凌晨 1 点执行清理脚本:
0 1 * * * /path/to/cleanup_tmp_logs.sh
-
配置日志轮转:
您可以配置日志轮转工具(如 logrotate
)来自动管理日志文件,包括 .tmp
文件。编辑 /etc/logrotate.conf
或创建一个新的日志轮转配置文件(例如 /etc/logrotate.d/ocp
):
/path/to/log/directory/*.log {
daily
rotate 30
compress
delaycompress
missingok
notifempty
create 0640 admin admin
postrotate
/usr/bin/find /path/to/log/directory -name "*.tmp" -type f -mtime +30 -exec rm -f {} \;
endscript
}
-
检查 OCP 日志清理策略:
虽然 ocp.agent.ob-cleaner.config
不是一个标准参数,但您可以检查 OCP 的日志清理策略,确保它涵盖了所有类型的日志文件。您可以在 OCP 的配置文件中查找相关的日志清理配置,或者在 OCP 的管理界面中查看是否有相关的日志清理设置。
总结
-
手动删除:编写脚本定期删除
.tmp
文件。
-
配置日志轮转:使用
logrotate
工具自动管理日志文件。
-
检查 OCP 日志清理策略:确保 OCP 的日志清理策略涵盖了所有类型的日志文件。
希望这些方法能帮助您解决 .tmp
文件未被自动删除的问题。如果有其他问题或需要进一步的帮助,请随时提问。
更多信息请查看:
- 查询主机的 OCP Agent 详情
- 使用图形化界面部署 OCP
- 管理 OBProxy 集群参数
- OCP-Agent 运维脚本使用说明
- 查询软件包列表
- 查看参数列表
- strict_check_os_params
- obshell-sdk-go 快速上手
- OBProxy 集群参数管理
- default_compress_func
- 在 Kubernetes 环境中部署 OceanBase 集群
- OBProxy 参数说明
(小助手的答复已结束,如未能解决您的问题,请继续提问并等待其他同学的回复,谢谢!)
旭辉
#8
我查询了下,你这个版本还没有这个参数,建议写个脚本加定时任务清理吧,
可参考下小助手提供的脚本
#!/bin/bash
find /path/to/log/directory -name “*.tmp” -type f -mtime +30 -exec rm -f {} ;