标签:www logs 七天 设置 home 日志 find name
一直都是查看日志,看日志里的异常,看最近几天的日志。
今天听课,老师提到“日志一般保存几天”这个点,然后发现我们的日志都是保留最近七天的,这是怎么设置的呢?
首先说我们用的日志是log4j 1.2
然后是我们日志的一个输出形式,具体自行百度:
<appender name="pay" class="org.apache.log4j.DailyRollingFileAppender"> <param name="File" value="/home/www/logs/prod/pay/pay.log" /> <param name="DatePattern" value="'.'yyyy-MM-dd" /> <param name="Append" value="true" /> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d %5p [%t] (%F:%L) - %m%n" /> </layout> <filter class="org.apache.log4j.varia.LevelRangeFilter"> <param name="LevelMin" value="INFO" /> <param name="LevelMax" value="ERROR" /> </filter> </appender> <logger name="pay"> <level value="info" /> <appender-ref ref="pay" /> </logger>
我百度了一下,DailyRollingFileAppender,DatePattern '.'yyyy-MM-dd 的设置,也无法设置保留几天的日志啊。
终归结果就是log4j1.2并不带这种保留几天或者删除几天前的日志的功能。
然后网上给出的方案是,linux定时清理几天以前的,没想到我们项目真的是这么实现的。
第一步,有一个清理的脚本
logclean.sh find /home/www/logs/test/ -maxdepth 1 -type f -mtime +7 -name '*' -exec rm -rf {} \; find /home/www/logs/test/pay/ -maxdepth 1 -type f -mtime +30 -name '*' -exec rm -rf {} \; find /home/www/logs/test/userlog/ -maxdepth 1 -type f -mtime +7 -name '*' -exec rm -rf {} \;
有这个脚本,肯定是定时执行的吧,不能每天人工去执行吧。然后百度一下,是linux的定时任务corn。
赶紧记下来哦,不过面试的时候好像从来没问过。
标签:www,logs,七天,设置,home,日志,find,name 来源: https://blog.csdn.net/yanweijie0317/article/details/115799230
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。