使用logrotate做nginx日志分割

版权申明:转载请注明出处。
文章来源:http://bigdataer.net/?p=266

背景

nginx是一款非常优秀的网络代理工具,但是其日志管理有点缺憾:nginx的access_log会无限的增长。我们希望的是它能按照日期去做日志分割。一般有两种方法,自己写脚本实现,一种是使用现成的logrotate工具。本文讲解第二种方法。

过程

使用logrotate做nginx日志轮询
logrotate看名字就知道是专门做日志轮询的,只把任务配置放在/etc/logrotate.d/下,任务就会自动完成,而且无需安装,系统自带,比较推荐使用.
vi /etc/logrotate.d/nginx

    /usr/local/nginx/logs/bigdataer/*log /usr/local/nginx/logs/nginx_error.log {
    notifempty
    daily
    sharedscripts
    postrotate
    /bin/kill -USR1 `/bin/cat /usr/local/nginx/nginx.pid`
    endscript
    } 

多个日志以空格分开,
notifempty 如果日志为空则不做轮询
daily 每天执行一次
postrotate 日志轮询后执行的脚本
这样,每天都会自动轮询

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,107评论 19 139
  • 第一章 Nginx简介 Nginx是什么 没有听过Nginx?那么一定听过它的“同行”Apache吧!Ngi...
    JokerW阅读 32,834评论 24 1,002
  • 《老男孩Linux运维》笔记 隐藏Nginx软件版本号 一般来说,软件的漏洞都和版本有关。因此要尽量隐藏对访问用户...
    Zhang21阅读 3,738评论 0 28
  • 当技术宅遇上技术债 当了15年IT民工,待过几家公司,做过不少项目,捅过一些篓子,也掉进过好多个坑,今天与大家分享...
    meng_philip123阅读 1,860评论 1 1
  • 冬 已深重 我们没用背影告别 山野 寂静无边 像我决堤的悲伤 往天际奔腾 拆掉记忆的线 你的好 碎裂了一地透明的白...
    如贝衔珠阅读 551评论 2 8