logrotate配置

使用cron,logrotate来管理日志文件

喜你入骨 提交于 2020-03-01 04:08:55
1) logrotate配置 logrotate 程序是一个日志文件管理工具。用来把旧的日志文件删除,并创建新的日志文件,我们把它叫做“转储”。 我们可以根据日志文件的大小,也可以根据其天数来转储,这个过程一般通过 cron 程序来执行。 logrotate 程序还可以用于压缩日志文件,以及发送日志到指定的E-mail 。 logrotate 的配置文件是 /etc/logrotate.conf 主要参数如下表: 参数 功能 compress 通过gzip 压缩转储以后的日志 nocompress 不需要压缩时,用这个参数 copytruncate 用于还在打开中的日志文件,把当前日志备份并截断 nocopytruncate 备份日志文件但是不截断 create mode owner group 转储文件,使用指定的文件模式创建新的日志文件 nocreate 不建立新的日志文件 delaycompress 和 compress 一起使用时,转储的日志文件到下一次转储时才压缩 nodelaycompress 覆盖 delaycompress 选项,转储同时压缩。 errors address 专储时的错误信息发送到指定的Email 地址 ifempty 即使是空文件也转储,这个是 logrotate 的缺省选项。 notifempty 如果是空文件的话,不转储 mail

日志管理 —— 日志轮替

こ雲淡風輕ζ 提交于 2020-02-28 13:35:20
日志按天记录 + 仅保留最近一段时间的日志。 日志文件命名规则 在配置文件中加入 dateext 参数,实现日期作为文件后缀。 “secure-20130605” 如果配置文件中没有 dataext 参数,就会使用 数字后缀。 logrotate 配置文件 /etc/logrotate.conf 源码包的程序需要手工配置日志。 logrotate 命令 logrotate [ 选项 ] 配置文件名 选项 说明 -v 显示日志轮替过程 -f 强制进行日志轮替,不管日志轮替条件是否已经符合。 来源: CSDN 作者: Jia ming 链接: https://blog.csdn.net/weixin_39541632/article/details/104553799

基于logrotate进行自动化日志切割、日志压缩和周期删除

我只是一个虾纸丫 提交于 2020-02-27 16:09:46
前言 这篇博文以课程课件为蓝本来探讨logrotate和自动化日志处理的一系列课题,细节和深层次原理部分略有删减, 是一篇被课程耽误了的技术博文。 既然谈的很直白,是一篇被课程耽误了的技术博文,如若有打着博客做引导或者拿着开源工具不开源之类的讨伐和道德绑架,恕不回复。 这里是分割线,不废话了,直接切入正文,对课程有兴趣,想深入理解logrotate的朋友可以关注文末课程介绍:) 1.日志切割的概念、必要性和基本思路 1.1 什么是日志切割 日志切割是指当应用或系统的日志文件达到设定的触发条件(如按照一定的时间周期:每天,按照大小:500MB),对其进行切割/分割处理,类似截断处理,把原本容量比较大的日志文件“劫走”转存为另外一个日志文件留存归档,这一刻之后产生的日志,继续输出到文件头被重置为0的日志文件中。 变化的部分 :日志文件的容量(瘦身变小),日志文件的个数(多出一份被切割下的历史日志) 不变的部分 :日志文件名不变 此外,一段时间后,我们还需要删除时间久远的日志文件,整个过程也被俗称为日志滚动(log rotation)。 1.2 为什么要进行日志切割 在线应用(包括操作系统)在长期运行过程中,会产生很多过程日志记录,通常是应用程序记录的一些对系统管理员或者程序开发者有用的信息的文件,诸如正在执行什么、发生了什么错误等一系列信息。 随着日志记录的不断积累,日志文件越来越大

linux基础:日志定时轮询详解

醉酒当歌 提交于 2020-02-08 07:19:48
logrotate介绍 对于Linux系统安全来说,日志文件是极其重要的工具。日志文件包含了关于系统中发生的事件的有用信息,在排障过程中或者系统性能分析时经常被用到。当日志文件不断增长的时候,就需要定时切割,否则,写日志的速度和性能也会下降,更不便于我们归档,查询。所以便有了使用logrotate的时候 ,logrotate是个十分有用的工具,它可以自动对日志进行截断(或轮循)、压缩以及删除旧的日志文件。例如,你可以设置logrotate,让/var/log/foo日志文件每30天轮循,并删除超过6个月的日志。配置完后,logrotate的运作完全自动化,不必进行任何进一步的人为干预。 logrotate配置文件位置 Linux系统默认安装logrotate工具,它默认的配置文件在:/etc/logrotate.conf/etc/logrotate.d/ logrotate.conf 才主要的配置文件,logrotate.d 是一个目录,该目录里的所有文件都会被主动的读入/etc/logrotate.conf中执行。另外,如果 /etc/logrotate.d/ 里面的文件中没有设定一些细节,则会以/etc/logrotate.conf这个文件的设定来作为默认值。 实际运行时,Logrotate会调用配置文件/etc/logrotate.conf。可以在/etc/logrotate

logrotate 真是好东西

送分小仙女□ 提交于 2020-01-07 19:41:44
定义由logrotate处理的文件类别,系统 CentOS7.6_1810 示例 vim /etc/logrotate.d/nginx logrotate /etc/logrotate.d/nginx logrotate -f /etc/logrotate.d/nginx 相关文件 file /etc/cron.daily/logrotate file /etc/logrotate.conf file /etc/anacrontab cat /var/lib/logrotate/logrotate.status [root@yiis-ali logs]# cat /etc/logrotate.d/nginx /data/nginx/logs/*.log { daily missingok rotate 7 dateext compress delaycompress notifempty create 640 root root sharedscripts postrotate if [ -f /data/nginx/logs/nginx.pid ]; then kill -USR1 `cat /data/nginx/logs/nginx.pid` fi endscript } Logrotate的疑问 shared scripts的作用是什么 ? (shared

Centos7.5-Linux计划任务与日志的管理

百般思念 提交于 2020-01-07 03:27:44
https://blog.51cto.com/xuegod/2304176 本节所讲内容: - 16.1 计划任务-at-cron-计划任务使用方法 - 16.2 日志的种类和记录的方式-自定义ssh服务日志类型和存储位置 - 16.3 实战-日志切割-搭建远程日志收集服务器 - 16.4 实战-配置公司内网服务器每天定时自动开关机 - 16.1 计划任务-at-cron-计划任务使用方法 大家平常都会有一些比如说:你每天固定几点起床?每天按时上班打卡、每月15号准时开工资、每年2月14你俩口子某某纪念日等这些诸如此类,这些都是定时发生的。或者说是通俗点说:例行公事;还比如说我们还会遇到一些突发事件,临时几点过来加个班?刚好晚上几点聚个餐? 像上面这些情况,如果事少的话你大脑可以记住,如果事很多,像老板经理董事长每天的工作安排,通常都是记在一些本上,或者闹铃提醒等。 那么,咱们的LINUX系统和上面的情况也很类似,我们也可以通过一些设置。来让电脑定时提醒我们该做什么事了。或者我们提前设置好,告诉电脑你几点做什么几点做什么,这种我们就叫它定时任务。而遇到一些需要执行的事情或任务。我们也可以通过命令来告诉电脑一会临时把这个工作给做一下 总结:在我们LINUX中,我们可以通过crontab和at这两个东西来实现这些功能的 计划任务的作用:是做一些周期性的任务

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

余生颓废 提交于 2019-12-31 02:25:47
对于Linux系统安全来说,日志文件是极其重要的工具。不知为何,我发现很多运维同学的服务器上都运行着一些诸如每天切分Nginx日志之类的CRON脚本,大家似乎遗忘了Logrotate,争相发明自己的轮子,这真是让人沮丧啊!就好比明明身边躺着现成的性感美女,大家却忙着自娱自乐,罪过!logrotate程序是一个日志文件管理工具。用于分割日志文件,删除旧的日志文件,并创建新的日志文件,起到“转储”作用。可以节省磁盘空间。下面就对logrotate日志轮转操作做一梳理记录: 1)配置文件介绍 Linux系统默认安装logrotate工具,它默认的配置文件在: /etc/logrotate.conf /etc/logrotate.d/ logrotate.conf 才主要的配置文件,logrotate.d 是一个目录,该目录里的所有文件都会被主动的读入/etc/logrotate.conf中执行。 另外,如果 /etc/logrotate.d/ 里面的文件中没有设定一些细节,则会以/etc/logrotate.conf这个文件的设定来作为默认值。 Logrotate是基于CRON来运行的,其脚本是/etc/cron.daily/logrotate,日志轮转是系统自动完成的。 实际运行时,Logrotate会调用配置文件/etc/logrotate.conf。 可以在/etc

logrotate---日志轮转

谁都会走 提交于 2019-12-19 03:26:49
1) 什么是logrotate? logrotate是一个日志管理程序,用来把旧的日志文件删除(备份),并创建新的日志文件,这个过程称为“转储”。我们可以根据日志的大小,或者根据其使用的天数来转储,这个过程一般由cron来执行。 logrotate还可以用于压缩日志文件,以及发送日志到指定的email。 2) logrotate的默认配置文件以及它的主要参数 logrotate 的配置文件是 /etc/logrotate.conf 主要参数如下表: 参数 功能 compress 通过gzip 压缩转储以后的日志 nocompress 不需要压缩时,用这个参数 copytruncate 用于还在打开中的日志文件,把当前日志备份并截断 nocopytruncate 备份日志文件但是不截断 create mode owner group 转储文件,使用指定的文件模式创建新的日志文件 nocreate 不建立新的日志文件 delaycompress 和 compress 一起使用时,转储的日志文件到下一次转储时才压缩 nodelaycompress 覆盖 delaycompress 选项,转储同时压缩。 errors address 专储时的错误信息发送到指定的Email 地址 ifempty 即使是空文件也转储,这个是 logrotate 的缺省选项。 notifempty

Linux 日志定时轮询流程详解

一曲冷凌霜 提交于 2019-12-10 06:39:08
来源:cooffeelis www.jianshu.com/p/ea7c2363639c logrotate介绍 对于Linux系统安全来说,日志文件是极其重要的工具。日志文件包含了关于系统中发生的事件的有用信息,在排障过程中或者系统性能分析时经常被用到。当日志文件不断增长的时候,就需要定时切割,否则,写日志的速度和性能也会下降,更不便于我们归档,查询。 所以便有了使用logrotate的时候 ,logrotate是个十分有用的工具,它可以自动对日志进行截断(或轮循)、压缩以及删除旧的日志文件。例如,你可以设置logrotate,让/var/log/foo日志文件每30天轮循,并删除超过6个月的日志。配置完后,logrotate的运作完全自动化,不必进行任何进一步的人为干预。 logrotate配置文件位置 Linux系统默认安装logrotate工具,它默认的配置文件在: /etc/logrotate.conf /etc/logrotate.d/ logrotate.conf 才主要的配置文件,logrotate.d 是一个目录,该目录里的所有文件都会被主动的读入/etc/logrotate.conf中执行。 另外,如果 /etc/logrotate.d/ 里面的文件中没有设定一些细节,则会以/etc/logrotate.conf这个文件的设定来作为默认值。 实际运行时

logrotate

天涯浪子 提交于 2019-12-01 08:44:49
手动执行logrote 测试命令 logrotate -d debug 调试 -f force 强制执行, 跟想要执行的 日志轮询的 单独配置文件 配置文件 ,参数 create 和  copytruncate 的区别: 总的说 就是 create = mv + cerate , copytruncate = cp + echo > log file 详情如下: 1)create: 这也就是默认的方案,可以通过 create 命令配置文件的权限和属组设置;这个方案的思路是重命名原日志文件,创建新的日志文件。详细步骤如下: 重命名正在输出日志文件,因为重命名只修改目录以及文件的名称,而进程操作文件使用的是 inode,所以并不影响原程序继续输出日志。 创建新的日志文件,文件名和原日志文件一样,注意,此时只是文件名称一样,而 inode 编号不同,原程序输出的日志还是往原日志文件输出。 最后通过某些方式通知程序,重新打开日志文件;由于重新打开日志文件会用到文件路径而非 inode 编号,所以打开的是新的日志文件。 如上也就是 logrotate 的默认操作方式,也就是 mv+create 执行完之后,通知应用重新在新文件写入即可。mv+create 成本都比较低,几乎是原子操作,如果应用支持重新打开日志文件,如 syslog, nginx, mysql 等,那么这是最好的方式。 不过