日志文件的自动对话[关闭]
Posted
技术标签:
【中文标题】日志文件的自动对话[关闭]【英文标题】:Automatic conversation of log file [closed] 【发布时间】:2021-11-26 06:53:12 【问题描述】:我想转换 .gz 中的日志文件,当它达到他的最大索引并希望在 logback 中将文件保留长达 60 天(最大历史记录)。
当达到他的最大索引值时,日志文件将进入 .gz。并希望将文件最多保存 60 天,总容量为 500 MB。 我们怎样才能做到这一点。
提前谢谢你。
【问题讨论】:
这是一个非常广泛的问题。请向我们展示您迄今为止尝试过的代码以及您遇到的具体部分。 【参考方案1】:您可以编写一个 shell 脚本来查找这些日志文件 zip 并将它们归档。使用 chron 安排此任务。
ARCHIVE_DIR=/path/to/archive/dir
ARCHIVE_FILE=$(data +"%Y-%m-%d").tar.gz
find logs -type f -iname *.log -mtime -1 | xargs tar -czf $ARCHIVE_FILE
mv $ARHICVE_FILE $ARCHIVE_DIR/$ARCHIVE_FILE
您可以将此脚本添加到您的 chron 标签中
* 1 * * * /path/to/your/backup_script.sh # run it ever morning at 0100
您可以使用 find 命令删除旧的日志存档。这个命令也可以调度。
find /path/to/archive/dir -type f -iname *.tar.gz -mtime -60 -exec rm \;
【讨论】:
以上是关于日志文件的自动对话[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
thinkphp 3.1.3 Runtime\Logs日志文件太多怎么关闭日志功能
sql server 2008 的事务日志文件存储数据库的啥情况