linux运维中nginx日志进行轮替的案例
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,小编给大家分享一下linux运维中nginx日志进行轮替的案例,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!linux系统上有一个非常好用的轮替服务--logrotate。通过这个服务,
千家信息网最后更新 2025年12月02日linux运维中nginx日志进行轮替的案例
小编给大家分享一下linux运维中nginx日志进行轮替的案例,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!
linux系统上有一个非常好用的轮替服务--logrotate。通过这个服务,可以对日志文件进行轮替管理。当日志文件过大时,可以对其进行切割成多个小的日志文件,还可以对其进行压缩处理。nginx默认的日志文件access.log以及error.log日志文件,是不会自行进行轮替的。所以,经常会用logrotate对nginx的日志进行轮替管理。
logrotate
对于logrotate这个程序的运行,是挂在系统的定时任务中每日执行的。
# cat /etc/cron.daily/logrotate #!/bin/sh/usr/sbin/logrotate -s /var/lib/logrotate/logrotate.status……
下面,我们来看看logrotate的配置文件/etc/logrotate.conf。
# 通过man logrotate查看更多信息# 下面是默认配置weekly <=== 默认一周进行一次轮替操作rotate 4 <=== 默认保存4份日志文件create <==== 当轮替完成后,创建一个新的日志文件dateext <=== 轮替的文件名前加上日期以便管理#compress <=== 默认对轮替的文件不进行压缩,如果想压缩,就把#去掉#将/etc/logrotate.d目录下的文件加载进来include /etc/logrotate.d# 下面是两个日志文件轮替的规则/var/log/wtmp { <=== 指定文件名 monthly <=== 一个月进行一次轮替 create 0664 root utmp <=== 新的日志文件权限及所有人,所属组设置 minsize 1M <=== 日志文件至少有1M时候才进行轮替 rotate 1 <=== 只保留一份日志文件}/var/log/btmp { missingok <=== 如果日志文件不存在,则不报错,直接忽略 notifempty <=== 如果日文文件是空的则不进行轮替 monthly create 0600 root utmp rotate 1}在了解完logrotate的配置文件后,我们就可以自己弄一个日志进行轮替练习了。首先,我们准备一个日志文件
# ll logrotate_learn.log -rwx------ 1 www www 223288003 Nov 12 09:05 logrotate_learn.log
这里,我们最好给该日志文件加上-a属性,只能向其新增内容。
# chattr +a logrotate_learn.log
接下来,我们要思考该日志文件的轮替规则了。这里,我们打算每周进行一次轮替并对轮替的文件进行压缩处理,并且当文件大小超过10M时候才进行轮替,另外,保留7份日志文件。这里,还有一点需要注意的是。因为该文件有a属性,所以轮替前需要将a属性删除,然后在轮替完成后再将a属性加上去。那么,现在我们需要写配置规则了
vim /etc/logrotate.d/logrotate_learn# 轮替练习/root/logrotate_learn.log{ missingok notifempty weekly rotate 7 size=10M create 0700 www www compress sharedscripts prerotate /usr/bin/chattr -a /root/logrotate_learn.log endscript sharedscripts postrotate /usr/bin/chattr +a /root/logrotate_learn.log endscript}下面,我们来进行轮替。
# logrotate [-vf] logfile 选项与参数:-v :启动显示模式,会显示logrotate 运作的过程喔!-f :不论是否符合,强制每个日志文件都进行rotate 的动作!# logrotate -v /etc/logrotate.d/logrotate_learn reading config file /etc/logrotate.d/logrotate_learnAllocating hash table for state file, size 15360 B……# ll logrotate_learn.log*-rwx------ 1 www www 0 Nov 12 10:15 logrotate_learn.log-rwx------ 1 www www 20974585 Nov 12 10:15 logrotate_learn.log.1.gz
对nginx日志文件进行轮替管理
学完后如果对日志文件进行轮替管理后,我们现在进入实战练习。
# ll /www/wwwlogs/total 1852452-rwx------ 1 www www 350288 Nov 12 02:50 access.log-rwx------ 1 www www 14016937 Nov 11 22:44 isunshinenet.com.error.log-rwx------ 1 www www 300416647 Nov 11 22:44 isunshinenet.com.log-rwx------ 1 www www 0 Sep 30 09:57 nginx_error.log
我们需要对这四个日志文件进行轮替管理,首先,创建好配置文件。
# 对nginx日志文件进行呢轮替/www/wwwlogs/access.log/www/wwwlogs/nginx_error.log/www/wwwlogs/isunshinenet.com.error.log/www/wwwlogs/isunshinenet.com.log{ missingok notifempty daily rotate 7 size=1M create 0700 www www sharedscripts postrotate if [ -f /www/server/nginx/logs/nginx.pid ];then /www/server/nginx/sbin/nginx -s reload fi endscript}看完了这篇文章,相信你对linux运维中nginx日志进行轮替的案例有了一定的了解,想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
文件
日志
管理
配置
属性
规则
案例
维中
文件名
时候
更多
篇文章
系统
处理
服务
接下来
两个
任务
信息
内容
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
滨河租房软件开发
焦作维森瑞网络技术有限公司
网络安全教育教师发言稿
如何表扬网络技术人员
点餐数据库怎么设计
给你一个表让你修改数据库
软件开发用什么模拟器
隐私浏览器网络安全防护
保存文件内容用什么数据库好
软件开发培训啥
如何去了解网络技术
浏览器发了请求不显示服务器响应
2021长三角网络安全
ads数据库
网络安全哪一块
软件开发女孩子容易学吗
钢铁行业服务器加固系统费用
设计一个什么数据库管理系统
数据库表中列明关联
网络安全大队月工作总结
存储文件的数据库
武汉大学网络安全李炳辉
unix数据自动传到服务器
海德威软件开发深圳上海分公司
衡水软件开发招工
在建工程软件开发评估方法
广东欢太互联网网络科技公司
浦东新区常规软件开发定制报价表
刺激战场下载后不能连接服务器
虚拟机网络安全教程