使用Log4j JMS appender连接ActiveMQ

使用Log4j JMS appender连接ActiveMQ,log4j,mule,activemq,esb,Log4j,Mule,Activemq,Esb,我正在尝试使用ActiveMQ将日志记录添加到Mule应用程序中,以便将所有消息写入SQL Server数据库。这是Mule中我的Log4j属性文件的内容: log4j.rootCategory=INFO, console, jms log4j.logger.org.apache.activemq=INFO, stdout log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.layout

我正在尝试使用ActiveMQ将日志记录添加到Mule应用程序中,以便将所有消息写入SQL Server数据库。这是Mule中我的Log4j属性文件的内容:

log4j.rootCategory=INFO, console, jms

log4j.logger.org.apache.activemq=INFO, stdout

log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%-5p %d [%t] %c: %m%n


# Mule classes
log4j.logger.org.mule=INFO
log4j.logger.com.mulesoft=INFO

# Your custom classes
log4j.logger.com.mycompany=DEBUG

# JMS Appender
log4j.appender.jms=org.apache.log4j.net.JMSAppender
log4j.appender.jms.InitialContextFactoryName=org.apache.activemq.jndi.ActiveMQInitialContextFactory
log4j.appender.jms.ProviderURL=tcp://sjc04-wduatesb1:9162
#tcp//localhost:61616
log4j.appender.jms.TopicBindingName=logTopic
log4j.appender.jms.TopicConnectionFactoryBindingName=ConnectionFactory
如您所见,我正在尝试使用JMS appender。我还有一个JNDI配置文件指向要读取的主题,该文件的内容存储在$MULE_HOME/conf/is中

topic.logTopic=logTopic


然而,我发现,即使主题上的消息已进入队列&退出队列,它也没有写入数据库。有人对我的错误有什么想法或建议吗?

解决这一问题的一种方法是创建主题的订阅者,将消息放入队列,然后让队列使用者将消息放入数据库。

除非使用持久订阅者,否则主题中不会排队,因此无法确定正在排队的内容。还有:什么数据库?