找回密码
 注册
查看: 3825|回复: 2

tomcat catalina.out日志切割

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2020-7-15 13:01:05 | 显示全部楼层 |阅读模式
使用系统自带的日志切割工具logrotate切割
vi /etc/logrotate.d/tomcat
& ]; q- Q, Q- Y- x+ n# j* h/usr/local/apache-tomcat/logs/catalina.out {$ o7 M7 K0 U2 I7 t! r( @" x! S
copytruncate6 [+ y, Q  T7 j. c2 @4 u
daily, o2 q" m& r0 h1 Q( K$ V3 k
rotate 5
- K& G  B& H3 f" |4 E" Qmissingok
1 f! d% I  A5 z* t3 t4 ^compress
- Z7 k1 I, X. B& p3 B8 s' \: zsize 16M" I; G3 P& P) N$ F
}
配置简单说明:0 J7 _0 N1 Q4 q9 Q7 U4 D
/usr/local/apache-tomcat/logs/catalina.out{ #要切割的文件
* @! d& L1 w0 w2 wdaily # 每天进行catalina.out文件的切割7 e# q, {" O7 @) o
rotate 5 # 保留5个文件
8 k# T: m' `  E  N. _. @. Wmissingok # 文件丢失了,继续切割而不报错9 u  u- K6 H' ~' P$ Z" L6 E
compress # 使用压缩的方式, t. s& W" B. u1 s$ _0 T5 A7 n
size 16M # 当catalina.out文件大于16MB时,就切割
工作原理:
9 Y' c+ d( O& j: k- |/ n. W1 `每天晚上crond守护进程会运行在/etc/cron.daily目录中的任务列表;
& R; y6 f) Q, d7 z! K, c: X与logrotate相关的脚本也在/etc/cron.daily目录中。运行的方式为"/usr/bin/logrotate /etc/logrotate.conf";
6 F" u: Y3 f. ?6 ^# l% C, U* k/etc/logrotate.conf文件include了/etc/logrotate.d/目录下的所有文件。还包括我们上面刚创建的tomcat文件;
4 p; O( y1 }- f" e7 W1 L) I/etc/logrotate.d/tomcat文件会触发/usr/local/apache-tomcat/logs/catalina.out文件的轮转。$ ^" a$ F" t4 G4 x5 q& m9 [' o# c+ Y
}

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2020-7-15 13:01:06 | 显示全部楼层
脚本内容如下:- }+ O4 r8 Q- m4 u$ c' e% b: ^
cd /home/user/tomcat- b5 M4 z5 A8 Z* g0 D
% M1 N) E" z. E- _# U! L# Y/ ]6 v/ F
find -name catalina.out -exec cp {} {}.`date -d last-day +%Y-%m-%d`.out \; -exec cp /dev/null {} \;: {- d9 C$ {* `$ A

" n: `8 r" n* {) y! P       对该脚本设置crontab定时任务(定时规则:每日00:00:00执行)即可实现日志按日志分割,设置crontab定时任务命令如下:) X: c; H1 i0 p1 p
conrab -e! W9 E- a' y% `+ Y& i7 J* X5 ]
       文件名及存储路径可自定义,以下截图只是实例。
) G& K% B. h2 M  u4 F! q0 0 * * * bash  /home/user/tomcat_catalina_out.sh
2 y7 N5 S& x6 s7 g) G9 P

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2020-7-15 16:21:33 | 显示全部楼层
在有些系统里,启动方式可能不一样:/ v# B) M) p6 v3 B/ p6 s+ u: ^
运行的方式为"/usr/bin/logrotate /etc/logrotate.conf";. W3 ~0 A$ F1 m. Y! a
/usr/bin/logrotate /etc/logrotate.conf、
8 F* k- L! {& {% j1 _) j. [4 W/ D, X6 Z5 \& n. |$ m3 w
  v. U+ ~- u# J
centos6差不多就是在/usr/sbin/目录中:
1 U# {  a3 F7 r" E/usr/sbin/logrotate /etc/logrotate.conf
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-12 03:27 , Processed in 0.021857 second(s), 22 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表