免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5490 | 回复: 9
打印 上一主题 下一主题

jsvc启动tomcat怎么把日志重定向到管道 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-01-26 17:58 |只看该作者 |倒序浏览
stdout太大了,想把他重定向到cronolog

论坛徽章:
0
2 [报告]
发表于 2005-01-27 22:16 |只看该作者

jsvc启动tomcat怎么把日志重定向到管道

可以用log4j呀

论坛徽章:
0
3 [报告]
发表于 2005-01-28 09:08 |只看该作者

jsvc启动tomcat怎么把日志重定向到管道

这个对我来说太复杂了,搞不了

论坛徽章:
0
4 [报告]
发表于 2007-07-31 13:26 |只看该作者
几年的老贴了,没有答案?顶一下~!求解……

论坛徽章:
0
5 [报告]
发表于 2007-08-06 16:30 |只看该作者

  1. start () {
  2.     # Start daemon
  3.     echo -n "Starting $prog: "
  4.     ${CATALINA_HOME}/bin/jsvc\
  5.     -user ${TOMCAT_USER} \
  6.     -home ${JAVA_HOME} \
  7.     -jvm server \
  8.     -pidfile ${TOMCAT_PIDFILE} \
  9.     ${CATALINA_OPTS} \
  10.     -cp ${CLASSPATH} \
  11.     -Dcatalina.home=${CATALINA_HOME} \
  12.     -Djava.io.tmpdir=${TMP_DIR} \
  13.     -Djava.endorsed.dirs=$CATALINA_HOME/common/endorsed \
  14.     -outfile ${TOMCAT_OUT} \
  15.     -errfile ${TOMCAT_ERR} \
  16.     org.apache.catalina.startup.Bootstrap
  17.     # PID=`/bin/cat ${TOMCAT_PIDFILE}`
  18.     RETVAL=$?
  19.     echo
  20.     [ $RETVAL -eq 0 ] && touch /var/lock/subsys/tomcatd
  21.     return $RETVAL
  22. }
复制代码



    -outfile ${TOMCAT_OUT} \
    -errfile ${TOMCAT_ERR} \

论坛徽章:
0
6 [报告]
发表于 2007-08-06 17:14 |只看该作者
${TOMCAT_OUT}是哪里定义的呢?

论坛徽章:
0
7 [报告]
发表于 2007-08-06 17:21 |只看该作者
source ${HOME}/.bashrc.tomcatd.env


你写一个.bashrc.tomcatd.env的配置清单就行

论坛徽章:
0
8 [报告]
发表于 2007-08-06 17:27 |只看该作者
可是这样写跟直接写:-outfile ${CATALINA_HOME}/logs/catalina.out有什么区别呢?好像无法实现按日期分割。
我目前只看到有说可以用log4j实现分割的,有不用jsvc时配合cronolog做分割的。

论坛徽章:
0
9 [报告]
发表于 2007-08-07 10:33 |只看该作者
不好意思,我没有做过cronolog的试验

很多文章里介绍cronolog重定向日志是针对stdout输入流弄得

  1.     .....
  2.     org.apache.catalina.startup.Bootstrap start \
  3.     |/sbin/cronolog ${TOMCAT_OUT}.%Y-%m-%d >> /dev/null 2>&1 &
复制代码


而jsvc则通过参数把stdout流指定到了 -outfile 参数所定义的文件上,所以用管道符重定向输出流交给cronolog来处理估计是不行了

我对C不是很熟悉,但我估计可以修改jsvc的源代码来达到你的目的,毕竟jsvc的源代码不是很长

http://commons.apache.org/daemon/jsvc.html

论坛徽章:
0
10 [报告]
发表于 2007-08-08 20:39 |只看该作者
我想到一个方法:创建一个pipe device,然后启动一个daemon程序读取这个管道,并输出到cronolog,然后jsvc的stdout输出到这个pipe device
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP