java appender_java – 应该在分布式系统中使用哪些Appender?如何配置?

我正在尝试将日志记录组件添加到分布式系统.它是用AspectJ编写的,以避免链接当前的源代码.我使用socket appender发送日志,但我想尝试一些更有效的方法.

我听说我应该使用JMSAppender和AsyncAppender,但我没有配置它.我应该创建收集日志的Receiver并将它们传递给数据库和GUI(我使用ChainSaw)吗?

编辑:

在我准备的小型演示中,我发送了6个日志以请求(模拟3个组件)

[2012-08-08 15:40:28,957] [request1344433228957] [Component_A] [start]

[2012-08-08 15:40:32,050] [request1344433228957] [Component_B] [start]

[2012-08-08 15:40:32,113] [request1344433228957] [Component_C] [start]

[2012-08-08 15:40:32,113] [request1344433228957] [Component_C] [end - throwing]

[2012-08-08 15:40:32,144] [request1344433228957] [Component_B] [end]

[2012-08-08 15:40:32,175] [request1344433228957] [Component_A] [end]

使用套接字Appender.所以我的log4j.properties是:

log4j.rootLogger=DEBUG, server

log4j.appender.server=org.apache.log4j.net.SocketAppender

log4j.appender.server.Port=4712

log4j.appender.server.RemoteHost=localhost

log4j.appender.server.ReconnectionDelay=1000

所以我跑了

>java -classpath log4j-1.2.17.jar org.apache.log4j.net.SimpleSocketServer 4712 log4j-server.properties

配置

log4j.rootLogger=DEBUG, CA, FA

#

log4j.appender.CA=org.apache.log4j.ConsoleAppender

log4j.appender.CA.layout=org.apache.log4j.PatternLayout

log4j.appender.CA.layout.ConversionPattern=[%d] [%t] [%c] [%m]%n

#

log4j.appender.FA=org.apache.log4j.FileAppender

log4j.appender.FA.File=report.log

log4j.appender.FA.layout=org.apache.log4j.PatternLayout

log4j.appender.FA.layout.ConversionPattern=[%d] [%t] [%c] [%m]%n

然后我将我的日志从文件发送到Chainsaw:

这绝对是基本的,但我想学习如何做得更好.首先,我想异步发送日志.然后创建非常简单的Receiver,例如可以将日志传递给文件.

我试着按照上面列出的教程,但是我失败了.所以问题是:你能提供一些示例配置吗? Receiver.java和log4.properties文件的示例?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值