如何配置 jetty 7 以使用 syslog 或 log4j

Posted

技术标签:

【中文标题】如何配置 jetty 7 以使用 syslog 或 log4j【英文标题】:how to configure jetty 7 to use syslog or log4j 【发布时间】:2010-05-21 12:47:12 【问题描述】:

我正在寻找一种将所有 jetty 7 日志记录到 syslog 的方法。我目前的配置 将所有内容转储到 JETTY_HOME/logs/.. 经过一些初步调查后,似乎我应该更改 JETTY_HOME/etc/jetty-logging.xml,但这看起来并不简单。看起来我应该创建一个新的 PrintStream 实现,它将其输出发送到 syslog 并将 stderr 和 stdout 重定向到 jetty-logging.xml 中的该类。

有什么更简单的方法可以做到这一点或让码头直接登录到 log4j 吗?

谢谢

【问题讨论】:

【参考方案1】:

根据this advice by David Yu,它应该像使 org.slf4j.Logger 可用一样简单,这对我不起作用。但是,在 unix 中,您可以执行类似的操作

java ... -Djetty.home=/usr/share/jetty -Djava.io.tmpdir=/tmp \
  -jar /usr/share/jetty/start.jar /usr/share/jetty/etc/jetty.xml 2>&1 |
  logger -t jetty

在 etc/jetty.xml 中,您可能还需要注释掉调用 RequestLogImpl.setFilename 的行。

【讨论】:

以上是关于如何配置 jetty 7 以使用 syslog 或 log4j的主要内容,如果未能解决你的问题,请参考以下文章

syslog-ng 学习心得与配置说明

如何配置嵌入式 Jetty 以处理 OPTIONS 预检请求?

如何配置嵌入式Jetty以使用LdapLoginModule?

jetty:如何以编程方式配置多个虚拟主机?

在 OSGi 中配置 Restlet 以使用 Jetty 连接器(非简单连接器)

如何从 Eclipse 中导出 Jetty 启动配置 [重复]