1. 服务器上的tomcat的catalina.out文件越来越大,查看起来很不方便,以前每次都是想起来的时候手工清理一下(cat /dev/null > catalina.out),后来发现了logratate这个工具,Ubuntu下的mysql,nginx好像也是用的这个工具还定期整理log的。配置文件为/etc/logrotate.conf,和很多其它ubuntu下的工具一下,也可以把配置文件写在/etc/logrotate.d/下面。如对我们的tomcat的log文件进行整理,
  2. sudo vi /etc/logrotate.d/tomcat,
  3. /opt/tomcat/logs/catalina.out {
  4. rotate 14
  5. daily
  6. copytruncate
  7. compress
  8. notifempty
  9. missingok
  10. }
  11. 其中:
  12. rotate 7 表示保留7天的备份文件
  13. daily 表示每天整理一次
  14. copytruncate 表示先复制log文件的内容,然后再清空
  15. compress 表示压缩备分文件
  16. missingok 表示如果找不到log文件也没OK
  17. notifempty 表示如果log文件是空的,就不进行rotate
  18. 可以通过/usr/sbin/logrotate -f /etc/logrotate.conf来执行。Ubuntu有/etc/cron.daily/logrotate文件,内容为:
  19. #!/bin/sh
  20. test -x /usr/sbin/logrotate || exit 0
  21. /usr/sbin/logrotate /etc/logrotate.conf
  22. 表示每天会定时执行一次这个命令
  23. 通过ntp同步服务器的时间
  24. 根据 Ubuntu的文档 有两种方式可以用来使服务器的时间和ntp server同步。一种是通过ntpdate命令,如
  25. ntpdate ntp.Ubuntu.com
  26. 然后在/etc/cron.daily/下新建一个文件来每天执行一次这个命令
  27. 另一种是通过ntpd来更新。sudo apt-get install ntp。配置文件/etc/ntp.conf,可以通过修改配置文件为改变ntp server, 我们用的是210.72.145.44这个server
  28. 对于Linux 的系统安全来说,日志文件是极其重要的工具。系统管理员可以使用logrotate 程序用来管理系统中的最新的事件,对于Linux 的系统安全来说,日志文件是极其重要的工具。系统管理员可以使用logrotate 程序用来管理系统中的最新的事件。logrotate 还可以用来备份日志文件,本篇将通过以下几部分来介绍
  29.   日志文件的管理:
  30.   1、logrotate 配置
  31.   2、缺省配置 logrotate
  32.   3、使用include 选项读取其他配置文件
  33.   4、使用include 选项覆盖缺省配置
  34.   5、为指定的文件配置转储参数
  35. 一、logrotate 配置
  36.   logrotate 程序是一个日志文件管理工具。用来把旧的日志文件删除,并创建新的日志文件,我们把它叫做“转储”。我们可以根据日志文件的大小,也可以根据其天数来转储,这个过程一般通过 cron 程序来执行。
  37.   logrotate 程序还可以用于压缩日志文件,以及发送日志到指定的E-mail 。
  38.   logrotate 的配置文件是 /etc/logrotate.conf。主要参数如下表:
  39.   参数 功能
  40.   compress 通过gzip 压缩转储以后的日志
  41.   nocompress 不需要压缩时,用这个参数
  42.   copytruncate 用于还在打开中的日志文件,把当前日志备份并截断
  43.   nocopytruncate 备份日志文件但是不截断
  44.   create mode owner group 转储文件,使用指定的文件模式创建新的日志文件
  45.   nocreate 不建立新的日志文件
  46.   delaycompress 和 compress 一起使用时,转储的日志文件到下一次转储时才压缩
  47.   nodelaycompress 覆盖 delaycompress 选项,转储同时压缩。
  48.   errors address 专储时的错误信息发送到指定的Email 地址
  49.   ifempty 即使是空文件也转储,这个是 logrotate 的缺省选项。
  50.   notifempty 如果是空文件的话,不转储
  51.   mail address 把转储的日志文件发送到指定的E-mail 地址
  52.   nomail 转储时不发送日志文件
  53.   olddir directory 转储后的日志文件放入指定的目录,必须和当前日志文件在同一个文件系统
  54.   noolddir 转储后的日志文件和当前日志文件放在同一个目录下
  55.   prerotate/endscript 在转储以前需要执行的命令可以放入这个对,这两个关键字必须单独成行
  56.   postrotate/endscript 在转储以后需要执行的命令可以放入这个对,这两个关键字必须单独成行
  57.   daily 指定转储周期为每天
  58.   weekly 指定转储周期为每周
  59.   monthly 指定转储周期为每月
  60.   rotate count 指定日志文件删除之前转储的次数,0 指没有备份,5 指保留5 个备份
  61.   tabootext [+] list 让logrotate 不转储指定扩展名的文件,缺省的扩展名是:.rpm-orig, .rpmsave, v, 和 ~
  62.   size size 当日志文件到达指定的大小时才转储,Size 可以指定 bytes (缺省)以及KB (sizek)或者MB (sizem).

原地址:http://blog.csdn.net/wanglipo/article/details/6934926

转载blog_Linux下Tomcat日志定期清理 及 logrotate 配置的更多相关文章

  1. Mac下Tomcat安装与Intellij IDEA配置Tomcat

    Mac下Tomcat安装与Intellij IDEA配置Tomcat 一 安装 1 下载地址:https://tomcat.apache.org/download-90.cgi 2 将压缩包解压后移至 ...

  2. linux运维、架构之路-tomcat日志切割工具 logrotate

    一.Logrotate简介 1.Logrotate实际就是对日志进行切割的小工具,他通过让用户来配置规则的方式,检测和处理日志文件.配合Cron可让处理定时化:2.Logrotate预制了大量判断条件 ...

  3. (转载)iis7下站点日志默认位置

    转自http://www.cnblogs.com/mincyw/p/3425468.html iis7下站点日志默认位置   在iis6时,通过iis管理器的日志配置可以找到站点日志存储的位置. 但是 ...

  4. [转载]Linux下tomcat的catalina.out文件过大,以及目录更改解决办法

    原文链接:http://liyan0524.iteye.com/blog/1285644 方法1—分割流 使用cronolog工具切分Tomcat的catalina.out日志文件 cronolog一 ...

  5. 解决Linux下Tomcat日志目录下的catalina.log日志文件过大的问题

    本文摘自:(http://blog.csdn.net/stevencn76/article/details/6246162) 分类: Java技术专区2011-03-13 12:25 5017人阅读  ...

  6. linux下tomcat日志文件现问号乱码

    在使用liunux系统下,使用tomcat记录的日志出现乱码的情况,不能显示中文,中文出现?问号乱码情况,不能正常查看 linux下乱码可能有三个情况 1.linux不含中文支持语言包 打开远程连接客 ...

  7. windows下tomcat日志的坑

    最近在调试工程,想着在windows下多开窗口操作方便,结果发现日志竟然不全,百思不得其解.最后发现竟然是部署的坑. 之前的部署都是在bin目录下运行service.bat安装服务后了事,启停都通过t ...

  8. linux下 tomcat 日志乱码/中文链接404

    1 日志乱码: JDK引用的设置 Java引用参数添加”-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8” 将上面参数添加到Catalina.sh中JAVA ...

  9. logrotate 清理tomcat日志

    rsyslog tomcat 服务器: 192.168.32.215 input(type="imfile" File="/usr/local/apache-tomcat ...

随机推荐

  1. bash: sqlplus: command not found 解决方法

    在oracle用户下输入:sqlplus 抛出bash: sqlplus: command not found 解决办法: 在root用户下输入如下命令: ln -s $ORACLE_HOME/bin ...

  2. shell脚本初析

    简单理解:运用很多工具,将复杂的步骤简单化,体现在shell脚本中框架:必须有备注,写的别人能够看得懂开头:#! /bin/bash 代表的意思是改文件使用的是bash语法要想使用该种方法运行shel ...

  3. OkHttp使用全解析(转)。

    Android系统提供了两种HTTP通信类,HttpURLConnection和HttpClient.关于HttpURLConnection和HttpClient的选择>>官方博客尽管Go ...

  4. vsftp 配置

    安装和基本配置网上很多文章,但他们的最终效果不是我想要的: 我想要的是,ftp上传的文件用户可以通过apache的http服务访问,也就是ftp上传的文件可以通过浏览器访问,并且可以通过ftp客户端修 ...

  5. appjs desktop

    /*   author: daimajia       name: appjs Express example       email: daimajia@gmail.com       any qu ...

  6. NLTk

    1.python的nltk中文使用和学习资料汇总帮你入门提高 http://blog.csdn.net/huyoo/article/details/12188573

  7. ActiveX 技术疑点 一

    1.编写基于MFC Activex 使用 静态库 .lib , MFC 的使用 在静态库中使用MFC . 生成ocx 文件 注册失败.提示: ***还是一个可执行文件,没有为这个文件类型注册的注册帮助 ...

  8. java.io.IOException: open failed: EACCES (Permission denied)问题解决

    1.  问题描述:在Android中,用程序访问Sdcard时,有时出现“java.io.IOException: open failed: EACCES (Permission denied)&qu ...

  9. 由于lightdm.conf 错误无法进入ubuntu 的办法

    由于自己向默认登录GNOME桌面,所以修改了lightdm,由于参数错误,结果无法启动桌面? 这是需要进入shell界面: 1.选择cancel ,如果虚拟机下无法点击cancel按钮,可以使用快捷键 ...

  10. [windows驱动]标准驱动例程

    [注]routine:例行程序. 1.标准驱动例程简介: 每一个内核态驱动程序都是由一系列系统定义的,标准的驱动例程组成.内核态驱动在这些标准例程中通过调用系统提供的驱动支持函数处理I/O请求包.为了 ...