linux日志管理-logrotate的使用

参考文档:

运维中的日志切割操作梳理(Logrotate/python/shell脚本实现)

linux下logrotate 配置和理解

Linux日志文件总管——logrotate

日志文件切割服务logrotate配置及crontab定时任务的使用

非常详细的rsyslogd & logrotate配置文件解析

Linux下的日志文件需要我们进行必要的管理维护,压缩,删除等。

logrotate程序是一个日志文件管理工具。用于分割日志文件,删除旧的日志文件,并创建新的日志文件,起到“转储”作用。可以节省磁盘空间。

当然我们可以创建一些定时任务写一些算法来实现。我们也可以直接使用logrotate。 

/etc/logrotate.conf

/etc/logrotate.conf是全局的logrotate配置

我们打开可以看到内容


第一个rotate就是我们rotate的时间,默认为一周一次。(daily, weekly, yearly)

rotate是保留的日志个数。

dateext是在日志文件名称后面加时间

include  /etc/logrotate.d 就是引入配置,这里是全局配置。

include里的就是引入各自的配置。

/etc/logrotate.d

/etc/logrotate.d下的文件就是各自的配置文件,如果有和全局重复的配置,则以此文件为准。

下面是一些配置文件

daily 日志文件按每个月轮循 daily 每天 weakly 每星期 yealy 每年

rotate 5              储存5个归档日志,对于第六个归档,时间最久的自动删除

compress              以归档的文件用gzip进行压缩

mail address          把转储的日志文件发送到指定的E-mail 地址

nocompress              不需要压缩时,用这个参数

copytruncate            用于还在打开中的日志文件,把当前日志备份并截断

nocopytruncate          备份日志文件但是不截断

create 644 root root    转储文件,使用指定的文件模式创建新的日志文件

size 20M              指定文件当天达到20M的时候才转储

dateext                文件后加上当前日期

当然创建完这个我们可以强制执行

logrotate命令格式:

logrotate [OPTION...]

-d, --debug :debug模式,测试配置文件是否有错误。

-f, --force :强制转储文件。

-m, --mail=command :压缩日志后,发送日志到指定邮箱。

-s, --state=statefile :使用指定的状态文件。

-v, --verbose :显示转储过程。

开启了debug选项时,logrotate会详细地给出处理日志过程中的处理信息,但是并不会真正地去处理日志文件

logrotate -d -vf /etc/logrotate.d/apache

使用也是比较简单的。

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

推荐阅读更多精彩内容

  • logrotate程序是一个日志文件管理工具。用来把旧的日志文件删除,并创建新的日志文件,我们把它叫做“转储”。我...
    会飞的鱼Coo阅读 1,209评论 0 2
  • 日志管理2 1、日志服务的配置文件 [loring ~]# vim /etc/rsyslog.conf ...
    崔千易阅读 617评论 0 0
  • 日志管理Rsyslog [TOC] 背景 有一个4台机器的分布式服务,不多不少,上每台机器上查看日志比较麻烦,用F...
    ferret阅读 31,680评论 0 6
  • 写 以“写”为题,是因为我不知道在后面添加什么才算是恰当。在我看来,我写的东西只能被称作是文字,算不上文章。 至于...
    弓长宇晗阅读 509评论 2 1
  • 爸、妈: 这是我到中国西北的第三天,我在给你们写一封信,我想给你们讲讲我的所见所闻。 前两天我们在青海,天时晴时雨...
    自然之眼阅读 318评论 0 0