logrotate 进行nginx日志分割.docxVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
logrotate 进行nginx日志分割

logrotate 进行nginx日志分割日志分割常用方法:自己写脚本分割使用linux自带的logrotate前者灵活,可以应对各种需求,自定义文件夹、文件名。后者配置简单,使用方便。下面我们以分割nginx日志为例介绍一下使用logrotate分割日志实例。logrotate简单介绍Rlogrotate使用cron按时调度执行,日志的执行过程原理为不断改名称:比如你有个access.log文件,需要保留4个日志文件,那么logrotate是这么轮转的:access.log满足轮转条件?(调度时间,日志大小是否满足要求)如果需要轮转则进行下列步骤,否则跳过access.log.3存在?如果存在则删除access.log.2如果存在则改名为access.log.3access.log.1如果存在则改名为access.log.2access.log如果存在则改名为access.log.1创建一个空的access.log文件如下图所示:logrotate配置文件一般在:/etc/logrotate.conf 通用配置文件,可以定义全局默认使用的选项。/etc/logrotate.d/xxx 自定义服务配置文件我们可以看下/etc/logrotate.conf里面的内容123456789101112131415161718192021222324252627# 一个星期轮转一次weekly#保留四个日志rotate 4# 轮转旧的日志文件后创建新日志文件create# 使用日期作为轮转日志的后缀dateext# 压缩存储日志#compress?# 包含某个目录下的自定义日志轮转include /etc/logrotate.d?# no packages own wtmp and btmp -- well rotate them here/var/log/wtmp {monthlycreate 0664 root utmpminsize 1Mrotate 1}/var/log/btmp {missingokmonthlycreate 0600 root utmprotate 1}我们新建一个/etc/logrotate.d/nginx来分割nginx日志,配置文件内容如下:123456789/data/logs/nginx/access/access.log /data/logs/nginx/access/default.log {dailyrotate 15minsize 10Msharedscriptspostrotate?/usr/local/server/nginx/sbin/nginx -s reloadendscript}第一行:指明日志文件位置,多个以空格分隔第二行:调用频率,有:daily,weekly,monthly可选第三行:总共轮换多少个日志文件,这里为保留15个第四行:限制条件,大于10M的日志文件才进行分割,否则不操作sharedscripts用于指明以下是执行轮转前和轮转后自定义执行的命令,比如postrotate和endscript表示,轮转后,执行nginx的重新加载配置文件,避免日志轮转后不写日志。如果要轮转前执行某个命令可以使用prerotate代替postrotate即可,两者可同时存在。可以通过man logrotate查看更多选项默认logrotate是通过crontab定期执行的,我们也可以手动执行查看结果:#?logrotate -vf /data/log/nginx/access.logv选项表示查看详细执行过程f表示强制执行日志轮转(不然时间不到,日志文件大小等条件不满足,不会执行)强烈建议执行一下,了解下执行过程。验证是否执行,查看cron的日志即可# grep logrotate /var/log/cron

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档