一个关于tomcat的catalina日志分割的问题[解决]
一搜,出来一大堆啊基本方法如下,我想说的是copy的东西是不是你已经实践了的
要想分割tomcat的catalina.out,需作如下工作:
修改tomcat bin目录下的catalina.sh文件中的
Java代码
org.apache.catalina.startup.Bootstrap “$@” start\
>> “$CATALINA_BASE”/logs/catalina.out 2>&1 &
org.apache.catalina.startup.Bootstrap “$@” start\
>> “$CATALINA_BASE”/logs/catalina.out 2>&1 &
为
Java代码
org.apache.catalina.startup.Bootstrap "$@" start2>&1 \
| /usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null &
org.apache.catalina.startup.Bootstrap "$@" start2>&1 \
| /usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null &
同时,文件中有一行
Java代码
touch “$CATALINA_BASE”/logs/catalina.out
touch “$CATALINA_BASE”/logs/catalina.out
可以注释掉,完成之后重起Tomcat就可以了,
看logs文件中是否有catalina.2009-07-01.out样式的日志
有人真的用过么?我反正试了很多次依然如下
Using JRE_HOME: /home/local/jdk1.5.0_08
/home/local/tomcat-5.5.16/bin/catalina.sh: line 245: syntax error near unexpected token `|'
/home/local/tomcat-5.5.16/bin/catalina.sh: line 245: ` |/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null &'
我总结网上两种配置
一.
org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \
|/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null &
二.
org.apache.catalina.startup.Bootstrap "$@" start\
|/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null 2>&1 &
请注意 一.二两种都出问题,我就不清楚各位转贴的大侠们是怎么做的呢。实在搞不清楚了
[ 本帖最后由 75252 于 2009-9-28 14:00 编辑 ] 大部分都是转载,没有经过test的,就像linux论坛里的好多也是复制粘贴,你去试试可能问题百出 原帖由 gilet 于 2009-9-28 09:22 发表 http://bbs3.chinaunix.net/images/common/back.gif
大部分都是转载,没有经过test的,就像linux论坛里的好多也是复制粘贴,你去试试可能问题百出
en ,8错,但是这个问题出在哪里呢 还是一批啊茫然啊
希望有高人指点12
回复 #3 75252 的帖子
这个没有分割过,我是分割的apache的日志,用awstats来看的,catalina.out这个我定期清空:em06: 原帖由 gilet 于 2009-9-28 10:48 发表 http://bbs3.chinaunix.net/images/common/back.gif这个没有分割过,我是分割的apache的日志,用awstats来看的,catalina.out这个我定期清空:em06:
ok这个方法行不通,只能自己发力了。解决思想:
使用log4j替换默认使用的java.util.logging
Log4j功能强悍可以实现所要的功能
具体方法(只说我做的具体能不能行自己再去尝试一下,或者还有更好的方法)
(log4j了解尚浅,看看官网大概就这些玩意啦。不知道和java.util.logging的默认配置一样不一样)
1.停掉tomcat
2.下载log4j需要的程序commons-logging.jar log4j-1.2.12.jar放到tomcat安装目录的tomcat-5.5.16/common/lib下
两个包去这拿commons-logging用1.1.1
http://jakarta.apache.org/commons/logging/index.html
http://logging.apache.org/log4j/index.html
3.增加log4j.properties配置项
log4j.rootLogger=INFO, R
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
log4j.appender.R=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R.DatePattern='.'yyyy-MM-dd-HH
log4j.appender.R.File=${catalina.home}/logs/tomcat.log
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
4.log4j.properties存放路径tomcat-5.5.16/common/class
5.启动
OK去${catalina.home}/logs/tomcat.log里面看一下 东东都有了 按小时会自动切换一个新文件。
现在唯一存在风险的是
文档说log4j.appender.R=org.apache.log4j.DailyRollingFileAppender是按天分割的标志
但我的分割格式是log4j.appender.R.DatePattern='.'yyyy-MM-dd-HH(按小时)
由于对java很白痴所以虽然现在没啥问题不知道夸天的时候会出什么样的异常。 回复 1# 75252
改成 catalina.`date +%Y-%m-%d`.out
就可以了 感觉到也是这样,问题多多啊,还是自己写比较放心吧
永夜君王www.wanjuanba.com/25/25331/ 永夜君王最新章节列表 章一 绯色 章二 站着沉默。遮天www.wanjuanba.com/0/2/遮天最新章节:正文 完本感言。最强弃少www.wanjuanba.com/0/291/ 最强弃少重生到地球,叶默趁着下课的时候。《最强弃少》 第一卷 楔子 第一章 小鸡有恙否。唐砖www.wanjuanba.com/1/1724/ 唐砖 第一节沧海变桑田 第二节 人不如马 第三节人世间。 我自己搞了一个tomcat的00点执行脚本
楼主的方法我也看到过,是要安装啥的... 闲麻烦
#!/bin/bash
tomcat_8080=/home/tomcat/tomcat7_8080/logs
d=`date +%Y-%m-%d`
cd $tomcat_8080
cp catalina.out catalina.out.${d}
echo "" > catalina.out
find $tomcat_8080 -mtime +25 -type f -name "*" -exec rm -f {} \ ; > /dev/null 2>&1
页:
[1]