链锯同一个tomcat上同一个log4j -sockethub appender的多个版本

时间:2013-05-30 19:53:57

标签: log4j apache-chainsaw

我在一个tomcat上部署了同一个应用程序的多个版本。这两个应用程序都具有相同的log4j配置。  因此,当我们使用电锯时,只有一个版本的日志显示在电锯中。

这就是我在log4j中的内容

log4j.appender.HUB=org.apache.log4j.net.SocketHubAppender
log4j.appender.HUB.port=39867
log4j.appender.HUB.LocationInfo=true
log4j.appender.HUB.Threshold=INFO
log4j.appender.HUB.application=remotehost

有没有办法保留一个log4j文件并为chaisaw动态分配端口?

1 个答案:

答案 0 :(得分:0)

如果将JMDNS添加到类路径中,则可以使用Chainsaw的最新开发人员快照在log4j1.2.17的SocketHubAppender中使用ZeroConf支持,以便“发现”Chainsaw中的sockethubappender配置。

  • 在此处下载Chainsaw的最新开发者快照:http://people.apache.org/~sdeboy/
  • 下拉JMDNS并将其添加到您的类路径:http://jmdns.sourceforge.net
  • 将此添加到log4j属性文件中:
    • log4j.appender.HUB.advertiseViaMulticastDNS =真
  • 更改log4j属性文件,为每个已部署应用的SocketHubAppender配置定义唯一的“端口”值:
    • log4j.appender.HUB.port =(每个应用程序的不同端口)

当您重新启动应用程序和Chainsaw时,Chainsaw中应该有一个'zeroconf'选项卡,其中列出了您的sockethubpenpender条目。

双击ZeroConf选项卡中的条目以打开新选项卡,并开始从该应用程序的SocketHubAppender接收条目。