gpt4 book ai didi

linux - 存储一天的应用程序日志

转载 作者:太空宇宙 更新时间:2023-11-04 11:08:51 24 4
gpt4 key购买 nike

我有一个应用程序正在生产环境中运行。我们在哪里创建日志文件。日志文件的最大计数设置为 10,最大调试写入设置为某个值,这样当日志文件变为 6MB 时,将创建一个新的日志文件。

因此,我们的日志滚动文件名如下:-

<file_name>.log
<file_name>.log.1
<file_name>.log.2
...
<file_name>.log.10

我的问题是在这10 个日志文件 中只能找到15 分钟 的日志。我知道我可以更新我的代码库以使用 DailyRollingFileAppender。但我正在寻找的是一个短期解决方案来存储一天的日志,这样它就可以在没有任何代码更改或最少的代码/配置更改的情况下完成。例如,我可以通过一些 cron 作业或 linux 命令等来实现这一点。

注意:- 我在生产环境中的 Linux 操作系统上运行此应用程序。

非常感谢任何快速帮助。

~谢谢

最佳答案

您可以创建一个 shell 脚本并将其添加到 cron 作业中。

NOW_DATE=$(date +"%m-%d-%Y-%H-%M") 
cd /var/log/OLD_LOGS
mkdir /var/log/OLD_LOGS/$NOW_DATE

cd /var/log/
mv server.log.* /var/log/OLD_LOGS/$NOW_DATE/
mv *.zip /var/log/OLD_LOGS/$NOW_DATE/
cp server.log /var/log/OLD_LOGS/$NOW_DATE/

cd /var/log/OLD_LOGS/$NOW_DATE
x=$(ls -l |wc -l)
if [ $x -le 1 ] then
SUBJECT="There is an issue with generating server log - less number of files"
EMAIL="support@abc.com"
EMAILMESSAGE="/tmp/errormsg.txt"

/bin/mail -s "$SUBJECT" "$EMAIL" < $EMAILMESSAGE
fi

cd /var/log/OLD_LOGS/
zip -r $NOW_DATE.zip $NOW_DATE
rm -r -f $NOW_DATE

find /var/log/ -type f -mtime +180 -exec rm {} \;

关于linux - 存储一天的应用程序日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24115100/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com