logrotate关于日志轮询和分割
如果你的是源码包安装的服务,那么对于Linux服务器上的一些服务在运行当中产生的日志很重要,可以判断你的服务是否有异常等,但源码包安装的日志是没有日志的轮询或者说是切割能力的,
所以你就需要用到bash脚本来做或者用其他语言,但我这里来介绍下一个RHEL系列的工具 logrotate 他可以轻松的帮你实现日志的轮询。像RHEL和CentOS都默认安装了该服务。你可以直接
编辑/etc/logrotate.conf 来实现对相应日志文件的轮询:
例如典型的apache日志,
首选我来说下列子然后在详细说他的参数:
我的编译安装的apache是在/usr/local/apache2/logs
这里记录了我的所有apache的日志文件包括虚拟主机的文件。
[root@app logs]# vi /etc/logrotate.conf
# see "man logrotate" for details
# rotate log files weekly
# see "man logrotate" for details
# rotate log files weekly
weekly # keep weeks worth of backlogs
rotate # create new (empty) log files after rotating old ones
create # use date as a suffix of the rotated file
dateext # uncomment this if you want your log files compressed
#compress # RPM packages drop log rotation information into this directory
include /etc/logrotate.d # no packages own wtmp and btmp -- we'll rotate them here
/var/log/wtmp {
monthly
create root utmp
minsize 1M
rotate
} /var/log/btmp {
missingok
monthly
create root utmp
rotate
} /usr/local/apache2/logs/*_log{
daily
create
rotate 30
}
我在下面加入了我的apache的log文件下所有以_log结尾的文件
这样无论我将来在添加新的虚拟主机太也会生效。
当然我们可以用:logrotate -v /etc/logrotate.conf 来查看我们现在生效的日志配置,在里面我可以再最后看到我添加的apache日志中有了我的虚拟主机命名的日志文件信息
如果想让你现在的配置就生效的话 你可以使用 :[root@app logs]# logrotate -f /etc/logrotate.conf 这就可以强制执行该配置文件中的信息。这个需要注意的是尽力不要用在线上服务器
配置介绍:
1.日志的命名规则
如果配置文件中有dateext参数,那么日志会用日期来作为日志文件的后缀, 例如:"mail-20150722" 这样可以保证日志不会重叠覆盖。也不需要日志文件改名。只需要自定文件的个数删除多余的日志文件即可。
如果配置文件中没有dateext参数,那么日志文件就需要进行改名,当第一次进行日志轮替时,当前的日志文件名,会修改为"日志文件名.1"然后在重新生成一个新的文件名称为 日志文件名记录数据,以此类推就比如像手。枪子弹夹装弹一样,新的加入会成为第一个后面的会成为第二个在后面的又二变成三
2.配置文件及相应的配置参数介绍:(该图来自网络如有版权问题可留言修改)

logrotate关于日志轮询和分割的更多相关文章
- Nginx 访问日志轮询切割
Nginx 访问日志轮询切割脚本 #!/bin/sh Dateformat=`date +%Y%m%d` Basedir="/application/nginx" Nginxlog ...
- Nginx的继续深入(日志轮询切割,重写,负载均衡等)
Nginx的访问日志轮询切割 通常什么情况Nginx会把所有的访问日志生成到一个制定的访问日志文件access.log里面,但时间一长,日志个头很大不利于日志的分析和处理. 有必要对Nginx日志进行 ...
- apache日志轮询技术
1.首先先下载安装apache的日志轮询工具cronolog: wget http://cronolog.org/download/cronolog-1.6.2.tar.gz .tar.gz cd c ...
- nginx日志配置,以及日志轮询
一.为nginx配置错误日志 Nginx错误日志是调试nginx的重要手段,属于核心功能模块的参数(ngx_core_module)该参数名字为err_log,是放在Main区块中全局配置 err_l ...
- Apache日志轮询Cronolog安装及简单用法
安装日志轮询工具cronolog: [root@bqh- tools]# tar xf cronolog-.tar.gz [root@bqh- tools]# cd cronolog- [root@b ...
- linux Apache 日志轮询
安装日志轮询工具 cronolog [root@Nagios-Server tools]# wgethttp://cronolog.org/download/cronolog-1.6.2.tar.gz ...
- logrotate 日志轮询(转存)
1.建立/etc/logrotate.d/nginx文件[1] vim /etc/logrotate.d/nginx 2.写入如下内容: /var/log/nginx/*log { daily rot ...
- 源码安装最新版keepalived,剥离日志出来并配置日志轮询
安装 yum install -y gcc openssl-devel popt-devel ipvsadm libnl3-devel net-snmp-devel libnl libnl-devel ...
- apache 日志轮询 linux cronolog
Linux下运行的Web服务器Apache,默认日志文件是不分割的,一个整文件既不易于管理,也不易于分析统计.安装cronolog后,可以将日志文件按时间分割,易于管理和分析. cronolog安装配 ...
随机推荐
- 用ProGet搭建内部的NuGet服务器(更新安装步骤)
以下是转自dudu的文章,但是我发觉时间的问题,他的安装方法已经不适用了,所以这里我更新了安装方法: 最近团队内部用的一个很简陋的NuGet服务器出问题了,nuget push发包,客户端显示发布成功 ...
- 使用Github Pages创建自己的网站
这是一篇使用Github Pages创建自己网站的教程,操作很简单,相信,亲们肯定一学就会,但是大家也要有一定的github基础呀,所以小编给大家附上一个链接(http://www.cnblogs.c ...
- hdu1402 FFT入门
参考这里:http://www.cnblogs.com/pdev/p/4354705.html http://www.cnblogs.com/pdev/p/4354629.html 题意:求大数乘法 ...
- python统计nginx脚本信息
#!/usr/bin/env python # -*- coding: utf-8 -*- import urllib2 import json import subprocess import th ...
- .Net和C#的理解
.Net是一个微软出品的开发平台,不仅仅是适用于Windows操作系统,还适用于mono,Linux等等, .Net库包括两部分:部分库定义了一些基本类型.CTS(common Type System ...
- CentOS下X Window与命令行界面的切换
[Ctrl] + [Alt] + F1~F6:文字界面登陆tt1~tty6 [Ctrl] + [Alt] + F7:图形界面桌面 从文字界面启动图形界面的命令:startx
- SublimeREPL快捷键设置
SublimeREPL 允许你在 Sublime Text 中运行各种语言(NodeJS , Python,Ruby, Scala 和 Haskell 等等).所以对于程序员来说,这是很重要的一个插件 ...
- PHP面向对象之朝花夕拾
虽然平时都在用面向对象的思维编程.但是都是基于框架,很多技术细节一段时间不用就会逐渐模糊.拾遗部分:面向对象的三大特称:继承多态封装. 构造方法.__construct() 构造方法.再new的时候 ...
- Django中Celery的实现介绍(一)
Django中Celery的实现 Celery官网http://www.celeryproject.org/ 学习资料:http://docs.jinkan.org/docs/celery/ Cele ...
- springMVC的注解详解
springmvc常用注解标签详解 1.@Controller 在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业 ...