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安装配 ...
随机推荐
- MongoDB安装与启动
我本人电脑是win8系统64位,下载64位的zip包,下载完成后解压缩到D:\MongoDB目录 创建数据库目录D:\MongoDB\data,接下来打开命令行窗口,切换到D:\MongoDB\bin ...
- javaBean和Servlet有什么区别
1.javabean无非就是里面有些set和get方法 2.servlet用来处理一些逻辑层 3.javabean.servlet.jsp分别对应M(odel).C(ontroller).V(iew) ...
- VS联调多个解决方案的项目
一.项目中经常出现一个解决方案里面有多个程序,如果想按F5启动多个实例进行操作调试那该怎么操作? 以前自己都使用附加进程的方法调试,这样的调试不需要按F5,自己只要运行多个程序后,使用vs的附加进程到 ...
- gdb简明手册
如果是在windows环境下,首先要添加环境变量: 新建一个环境变量MinGW_PATH,值为MinGW的运行目录: 然后在系统的Path变量后面加上一句:(每两个变量之间用 ; 分开) ------ ...
- webbench详解
安装 mkdir -p /usr/local/man/man1 yum install ctags -y tar zxvf webbench-1.5.tar.gzcd webbench-1.5make ...
- ruby 淘宝镜像
由于国内GFW原因,导致无法安装gem库文件.故选择淘宝镜像, 如何使用? $ gem sources --remove https://rubygems.org/ $ gem sources -a ...
- primefaces p:dataExporter filename 支持中文 utf8
p:fileDownload and p:dataExporter : for p:fileDownload, the Content-Disposition header should be set ...
- 京东分布式MySQL集群方案介绍
背景 数据库作为一个非常基础的系统,任何一家互联网公司都会使用,数据库产品也很多,有Oracle.SQL Server .MySQL.PostgeSQL.MariaDB等,像SQLServer/Ora ...
- spring-data-jpa 的@Query注解的使用
// ------------------------------------ 使用 @Query 注解 // 没有参数的查询 @Query("select p from Person p ...
- SQL 字段保留下划线后部分
select SUBSTRING(b.SUMMARY,0,charindex('_',b.SUMMARY))as SUMMARY from UltimusDB.dbo.INCIDENTS b