Log4j JMS附加程序将空消息发送到STOMP客户端

问题描述 投票:2回答:1

Am使用log4j JMS附加程序转发日志消息。并且正在使用STOMP-CLIENT运行Node JS,以侦听activemq,以接收转发的日志消息]

现在的问题是,每当转发日志时,该消息就被接收为空

这是我的客户代码

var Stomp = require('stomp-client');
var destination = '/topic/logTopic';
var client = new Stomp('127.0.0.1', 61613, '', '');
client.connect(function(sessionId) {
    client.subscribe(destination, function(body, headers) {     
        console.log('Mesage');
      console.log(body); //This is empty
    });       

});

这是我的Log4.j属性

log4j.rootLogger=INFO, stdout, jms

## Be sure that ActiveMQ messages are not logged to 'jms' appender
log4j.logger.org.apache.activemq=INFO, stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %-5p %c - %m%n

## Configure 'jms' appender. You'll also need jndi.properties file in order to make it work
log4j.appender.jms=org.apache.log4j.net.JMSAppender
log4j.appender.jms.InitialContextFactoryName=org.apache.activemq.jndi.ActiveMQInitialContextFactory
log4j.appender.jms.ProviderURL=tcp://localhost:61616
log4j.appender.jms.TopicBindingName=logTopic
log4j.appender.jms.TopicConnectionFactoryBindingName=ConnectionFactory
node.js log4j jms activemq stomp
1个回答
0
投票

尝试设置:

<bean class="org.apache.activemq.util.XStreamFactoryBean" name="xstream">
     <property name="annotatedClass"> 
            <value>org.apache.activemq.transport.stomp.SamplePojo</value>
     </property>
</bean>

http://activemq.2283324.n4.nabble.com/Active-MQ-sends-empty-message-bodies-via-Stomp-td2364203.html

© www.soinside.com 2019 - 2024. All rights reserved.