切割catalian日志的方式有很多种,比如shell脚本的、cronolog或者通过配置log4j等等这些都可以实现。但今天我要介绍是使用logrotate来按日期生成日志。

原文是一个外国博主的文章,在这里分享给大家。

如果catalina.out的大小超过了2G,那么tomcat可能在没有错误提示的情况下崩溃、无法启动。所以为了避免出现这个问题,我们应该每天分割catalina.out。

如何每天自动的分割catalina.out或者大小达到5M时切割catalina.out

1.新建一个文件

在/etc/logrotate.d/ 目录下新建一个文件,命名随意。

 /etc/logrotate.d/tomcat

2.复制下面的语句至上文新建的文件中

 /var/log/tomcat/catalina.out {   copytruncate   daily   rotate 7   compress   missingok   size 5M  }

各个配置的具体含义:

  • 确保/var/log/tomcat/catalina.out指向你服务器中的catalina.out的地址
  • daily - 每天切割
  • rotate - 保留最多七个文件
  • compress - 压缩分割后的文件
  • size - 当catalina.out大于5M时分割

如何起作用

  1. 每天晚上,cron daemon会自动执行/etc/cron.daily目录下的任务
  2. 这个会触发/etc/cron.daily/logrotate文件,logrotate一般是随linux按安装的。它会执行这个命令-“/etc/sbin/logrotate /etc/logrotate.conf”(注意空格)
  3. /etc/logrotate.conf 包含了/etc/logrotate.d目录下的所有脚本
  4. 这个会触发上一步你写的/etc/logrotate.d/tomcate文件

手动执行logrotate

执行以下语句来手动运行cron任务

 /usr/sbin/logrotate /etc/logrotate.conf

logrotate的更多操作

 man logrotate

From http://www.vineetmanohar.com

使用logrotate分割Tomcat的catalina日志的更多相关文章

  1. 使用logrotate分割tomcat日志

    转:https://www.52os.net/articles/using-logrotate-manage-tomcat-logs.html July 28, 2014 日志是Linux系统中最重要 ...

  2. cronolog分割Tomcat catalina.out日志

    Linux上tomcat的日志输出在catalina.out里面,随着时间的推移,产生的日志文件会越来越大,其主要是调试中打印的一些信息占空间,比如说System.out和log等等.tomcat 的 ...

  3. tomcat的catalina.out日志文件过大

    今天发现一个服务器的/opt目录数据过大,最后发现是tomcat中的catalina.out日志过大引起的 用du命令查看opt下一层的数据文件大小 [root@ccssapportalp opt]# ...

  4. 日志切割工具logrotate解决Tomcat catalina.out日志过大的问题

    一.介绍日志切割logrotate 对于Linux系统安全来说,日志文件是极其重要的工具.不知为何,我发现很多运维同学的服务器上都运行着一些诸如每天切分Nginx日志之类的CRON脚本,大家似乎遗忘了 ...

  5. Tomcat 的 catalina.out 日志分割

    一.背景 Tomcat 的 catalina.out 日志量不断增加,占用空间较大,且默认是不滚动的.因此,需要对其进行日志分割,并进行清理. 本文选用 Cronolog 对其进行分割. 二.安装 1 ...

  6. tomcat的catalina.out日志按自定义时间格式进行分割

    默认情况下,tomcat的catalina.out日志文件是没有像其它日志一样,按日期进行分割,而是全部输出全部写入到一个catalina.out,这样日积月累就会造成.out日志越来越大,给管理造成 ...

  7. Tomcat nginx log日志按天分割切割

    利用 Linux 自带的 logrotate 工具来实现按天切割日志.下方已 centos 7 系统为例来实践讲解. 原理 Logrotate是基于CRON来运行的,其脚本是/etc/cron.dai ...

  8. Linux系统下分割tomcat日志

    在Linux系统下,tomcat日志catalina.out并不会像window系统下,按日期进行重写备份,因此在Linux系统下会造成日志文件过大的情况,本文介绍采用 cronolog工具进行如在w ...

  9. 配置分割Tomcat日志

    安装cronolog 官网下载:http://cronolog.org/usage.html ./configuremake;make install 或者 yum install cronolog ...

随机推荐

  1. C#操作日志

    首先引用NLog的dll文件 using System.IO; using NLog; -------------------------------------------------------- ...

  2. 使用angular.bootstrap() 完成模块的手动加载

    之前我们看到使用ng-app指令,可以实现模块的自动加载.现在我们看下,angular中如何手动加载模块.需要使用到angular.bootstrap这个函数. <html> <he ...

  3. Activity系列讲解---Activity运行时的屏幕方向,全屏,窗体模式的设置

    Android内置了方向感应器的支持.Android会根据所处的方向自动在竖屏与横屏间切换.但是有的应用程序只能在横/竖屏时运行,比如某些游戏,此时我们要锁定该Activity运行时的屏幕方向,< ...

  4. 高性能MySQL(四):schema陷阱

    一.schema陷阱 二.缓存表和汇总表 三.范式和反范式

  5. sql查删更

    //查询#SELECT * FROM user_cawefwfrd where usewwr_cawrqqd_qaid=2252227//删除#DELETE FROM user_cauyuyurd w ...

  6. [Linux]I/O多路复用和epoll

    首先我们来定义流的概念,一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象. 不管是文件,还是套接字,还是管道,我们都可以把他们看作流. 之后我们来讨论I/O的操作,通过read ...

  7. UFLDL 教程三总结与答案

    主成分分析(PCA)是一种能够极大提升无监督特征学习速度的数据降维算法.更重要的是,理解PCA算法,对实现白化算法有很大的帮助,很多算法都先用白化算法作预处理步骤.这里以处理自然图像为例作解释. 1. ...

  8. 关于试用jquery的jsonp实现ajax跨域请求数据的问题

    我们在开发过程中遇到要获取另一个系统数据时,就造成跨域问题,这就是下文要说的解决办法: 先我们熟悉下json和jsonp的区别: 使用AJAX就会不可避免的面临两个问题,第一个是AJAX以何种格式来交 ...

  9. React学习笔记-4-什么是生命周期

    什么是声明周期?组件本质上就是状态机,输入确定,输出一定确定.如何理解这一点?react有两个特点,第一个就是去除了所有的手动dom操作,也就是使用jsx.第二个就是组件把状态和结果一一对应起来,从而 ...

  10. 双日历时间段选择控件—daterangepicker(汉化版)

    daterangepicker的配置信息,记录下来方便设置: <pre name="code" class="html"><pre name= ...