centos中Tomcat日志切割(logrotate)

logrotate是个强大的系统软件,它对日志文件有着一套完整的操作模式,譬如:转储、邮件和压缩等,并且默认logrotate加到cron(/etc/cron.daily/logrotate)作为每日任务执行。自动有了logrotate,我想不用再自己写日志切割脚本。
如下对Tomcat日志catalina.out日志切割

# ls -lh /usr/local/tomcat/logs/catalina.out
-rw-r--r-- 1 www www 14M Aug 28 15:55 /usr/local/tomcat/logs/catalina.out
配置logrotate对catalina.out日志切割
# cat /etc/logrotate.d/tomcat
/usr/local/tomcat/logs/catalina.out {
daily
rotate 5
missingok
dateext
compress
notifempty
copytruncate
}

参数详解:

daily    指定转储周期为每天
rotate 5    指定日志文件删除之前转储的次数,0指没有备份,5指保留5个备份
missingok    如果日志不存在则忽略该警告信息
dateext    文件后缀是日期格式,也就是切割后文件是:xxx.log-20150828.gz
compress    通过gzip压缩转储以后的日志(gzip -d xxx.gz解压)
notifempty    如果是空文件的话,不转储
copytruncate    用于还在打开中的日志文件,把当前日志备份并截断

立即截断日志:

# logrotate --force /etc/logrotate.d/tomcat
效果如下:
# ls -lh /usr/local/tomcat/logs/catalina.out*
-rw-r--r-- 1 www www    0 Aug 28 16:00 /usr/local/tomcat/logs/catalina.out
-rw-r--r-- 1 www www 1.1M Aug 28 16:00 /usr/local/tomcat/logs/catalina.out-20150828.gz

 

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索tomcat
, 日志
, 文件
备份
logrotate切割日志、tomcat日志切割、tomcat日志切割脚本、linux tomcat日志切割、tomcat7.0日志切割,以便于您获取更多的相关知识。

时间: 2024-09-15 17:12:33

centos中Tomcat日志切割(logrotate)的相关文章

centos下tomcat日志文件乱码

centos下tomcat日志文件乱码 ,最近装了centos7.0准备用来搭建web服务器. 遇到一个问题折腾了很久: 在tomcat日志文件中的中文全部为?号,并不是因为linux的编码问题引起的, 而是因为启动tomcat的时候需要设置 什么是 centos下tomcat日志文件乱码 最近装了centos7.0 准备用来搭建web服务器.遇到一个问题折腾了很久: 在tomcat日志文件中的中文全部为?号,并不是因为linux的编码问题引起的,而是因为启动tomcat的时候需要设置java虚

linux中NGINX日志切割和定时删除旧日志例子

  在nginx日志切割方面,我的方法和其他人用的方法有一些不一样,但对于我这种方法,如果有人觉得不好,可以给我提出,谢谢 nginx日志切割,我是直接写的一个简单的shell实现的,内容如下:  代码如下 复制代码 mv /usr/local/nginx/logs/abc.log /www/logbak/abc`date +%Y%m%d%H%M`.log /usr/local/nginx/sbin/nginx -s reload 这样执行以后,就会在/www/logbak目录下生成日志文件,你

CentOS中基于日志的站点统计系统的构建(Awstats)

通过我们构建的 HTTP服务器将 Web发布后,随着不断被访问, http://www.aliyun.com/zixun/aggregation/14417.html">Apache会记下每个访客的基本信息. CentOS的情况下,这些信息通常保存在位于 /var/log/httpd/下的相应日志文件中.但 Apache单调的日志,除了提供给我们一些最基本的服务器被访信息.以及出错信息之外,我们很难单纯的通过日志文件得到更多.更系统的关于时间.规律性.地点方面的信息.这也使得很难通过单纯的

centos中tomcat自启动脚本

 之前给公司搭建的tomcat环境(centos安装配置JDK1.7与Tomcat7),开发人员说每次启动tomcat不方便,每次要进到/usr/local/apache-tomcat-7.0.26/bin下面去执行,很浪费时间,要求简便化.好吧,有要求就要改进,下面来看看我找的自启动脚本. 系统:centos 5.x 环境:apache-tomcat-7.0.26 jdk-7u3 脚本内容:  代码如下 复制代码 #!/bin/bash # chkconfig: 2345 10 90 # de

linux下利用logrotate系统工具切割tomcat日志

参 数: -?或--help 在线帮助. -d或--debug 详细显示指令执行过程,便于排错或了解程序执行的情况. -f或--force 强行启动记录文件维护操作,纵使logrotate指令认为没有需要亦然. -s<状态文件>或--state=<状态文件> 使用指定的状态文件. -v或--version 显示指令执行过程. -usage 显示指令基本用法. 参数 功能 compress 通过gzip 压缩转储以后的日志 nocompress 不需要压缩时,用这个参数 copytr

linux下通过shell脚本对tomcat和nginx做日志切割

线上服务器一般都会遇到各种各样的日志切割.之前一直没有发布类似详细脚本文章,这次就弥补下网站相关内容.万变不离其宗,下边简单讲解一下两个日志切割,其他服务日志的切割也可以这样实现. Tomcat日志catalina.out切割小脚本: #!/bin/bash #cut tomcat catalina.out yesterday=`date  +"%F" -d  "-1 days"` cd /usr/local/tomcat7.0.70/log cp catalina

nginx日志切割的几个例子

例子1 1. 定义日志轮滚策略 # vim nginx-log-rotate /data/weblogs/*.log {     nocompress     daily     copytruncate     create     notifempty     rotate 7     olddir /data/weblogs/old_log     missingok     dateext     postrotate         /bin/kill -HUP `cat /var/r

按日期打印Python的Tornado框架中的日志的方法

  这篇文章主要介绍了按日期打印Python的Tornado框架中的日志的方法,需要的朋友可以参考下 网站流量上来后,日志按天甚至小时存储更方便查看和管理,而Python的logging模块也提供了TimedRotatingFileHandler来支持以不同的时间维度归档日志. 然而根据Logging HOWTO的官方指南设置后,却发现新的日志只剩下root的,Tornado内部的logger全部没有生效. 参考stackoverflow上的一个回答,我发现下面的配置能让Tornado内部的lo

linux tomcat日志过大处理办法

问题描述 linux tomcat日志过大处理办法 请给一个详细的教程,谢谢了.之前找过一个cronolog的教程,但是找不到教程所说的代码. 解决方案 用logrotatehttp://stephen830.iteye.com/blog/2159024 解决方案二: 这里有个文章可以参考下:http://www.cnblogs.com/yjhrem/articles/3147686.html