本文主要是介绍linux resin日志大小设置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
描述:resin服务器在被访问时,所有的日志都记录在access.log文件中,随着访问次数的增多,日志量越来越多,导致access.log文件的大小不断增大。
在resin官方手册中有关于access的配置,可以配置定周期备份。配置方法如下:
(1)找到resin的安装目录并进入,以/user/resin-pro-4.0.63目录为例,
执行:cd /user/resin-pro-4.0.63
(2)进入resin配置文件的目录,
执行:cd conf
(3)查找access-log所在的文件
执行:grep -a ‘access-log’ *
执行结果如下:那这边access-log所在的文件就是cluster-default.xml。
(4)修改配置文件cluster-default.xml
执行:vi cluster-default.xml
找到 access-log 行,
修改配置如下:
<access-log path="log/access.log"format='%h %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i"'rollover-size="10mb"rollover-count="20"auto-flush="true"/>
配置说明:
a.其中path表示日志生成的路径;format表示日志输出的格式,采用类似C语言中的printf函数的打印格式格式化日志信息;
b.rollover-period表示回滚的周期,1D表示以一天为单位回滚,所谓的回滚是将当前所有写日志操作都先锁住,然后将文件的内容复制到文件名带时间戳的文件里,完成之后access.log文件继续使用。同理,如果配置的是1W就表示以一周为单位;
c.rollover-count表示备份的文件数,这里配置是2,表示最多只备份两个备份文件,超过的就将更早的那个备份文件删除。但是在高并发的情况下,例如用户的访问量集中在某个时间段,且数量非常之大,或者是在做压力测试,这个时候access.log可能等不到一天的周期回滚就爆满了,致使导致线程无空间运行,甚至resin都无法启动。在某些帖子上看到部分人是将access.log的输出关闭(resin.conf中不写<access-log …/>这段配置就可以关闭了),这是一个解决方法。
第二配置方案:
<access-log path="log/access.log"format='%h %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i"'rollover-period="1D"rollover-size="10mb"rollover-count="20"auto-flush="true"/>
此外周期回滚和限制大小回滚可以一起使用,经过测试确实能生效。
这篇关于linux resin日志大小设置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!