Linux进阶(日志分割工具logrotate)
一、工具介紹
logrotate是一個(gè)linux系統(tǒng)日志的管理工具。可以對單個(gè)日志文件或者某個(gè)目錄下的文件按時(shí)間/大小進(jìn)行切割,壓縮操作;指定日志保存數(shù)量;還可以在切割之后運(yùn)行自定義命令。
logrotate是基于crontab運(yùn)行的,所以這個(gè)時(shí)間點(diǎn)是由crontab控制的,具體可以查詢crontab的配置文件/etc/anacrontab。系統(tǒng)會(huì)按照計(jì)劃的頻率運(yùn)行l(wèi)ogrotate,通常是每天。在大多數(shù)的Linux發(fā)行版本上,計(jì)劃每天運(yùn)行的腳本位于/etc/cron.daily/logrotate。
主流Linux發(fā)行版上都默認(rèn)安裝有l(wèi)ogrotate包,如果你的linux系統(tǒng)中找不到logrotate, 可以使用apt-get或yum命令來安裝
yum install -y logrotate一般linux都已經(jīng)自帶logrotate,下列命令可以查看是否已安裝
rpm -ql logrotate二、工具使用
進(jìn)入logrotate的配置目錄/etc/logrotate.d,新建一個(gè)文件,以分割”nginx”日志為例,則新建一個(gè)名為“nginx”的文件,內(nèi)容如下:
/home/docker/apps/nginx/logs/*.log {daily # 每天分割一次#size 5M # 源文件小于5M時(shí)不分割rotate 180copytruncatenotifempty # 當(dāng)日志文件為空時(shí)不分割missingokdateext # 切割后的文件添加日期作為后綴dateyesterday # 配合dateext使用,添加前一天的日期作為分割后日志的后綴dateformat -%Y-%m-%d }/home/docker/apps/nginx/logs/*.log 表示你要分割的文件路徑
腳本文件寫好后,先手動(dòng)執(zhí)行一次,看腳本文件是否可行。
logrotate -vf /etc/logrotate.d/nginx若能正常分割即可。
?
總結(jié)
以上是生活随笔為你收集整理的Linux进阶(日志分割工具logrotate)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 360 mysql读写分离_基于360的
- 下一篇: Linux下应用程序列表