簡體   English   中英

無法使用 log4j2 在 activemq 中記錄消息

[英]not able to Log the message in activemq using log4j2

import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.Destination;
import javax.jms.JMSException;
import javax.jms.MessageProducer;
import javax.jms.Session;
import javax.jms.TextMessage;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;

import org.apache.activemq.ActiveMQConnection;
import org.apache.activemq.ActiveMQConnectionFactory;


public class Producer {
    private static String url = ActiveMQConnection.DEFAULT_BROKER_URL;
    private static String QUEUE_NAME = "kesaven";
    private static final Logger logger = LogManager.getLogger(Producer.class.getName());
public static void main(String[] args) throws JMSException
{
    //System.out.println(url);
    ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(url);
    Connection connection = connectionFactory.createConnection();
    connection.start();

    Session session = connection.createSession(false,
            Session.AUTO_ACKNOWLEDGE);
    Destination destination = session.createQueue(QUEUE_NAME);
    MessageProducer producer = session.createProducer(destination);
    //TextMessage message = session.createTextMessage("My first log message to queue");
    logger.info("My first log message to queue");
    //producer.send(message);
    //System.out.println("Sentage '" + message.getText() + "'");
    connection.close();



}

}

我正在嘗試使用 log4j2 和 activemq 將消息記錄到隊列中。 我正在使用 log4j2.3 和隊列我使用 activemq 5.9.0 。 我能夠在隊列中看到異常消息,而不是我發送的消息。 以下是隊列中的錯誤信息

javax.jms.JMSException:無法從內容構建正文。 可序列化類不可用於代理。 原因:java.lang.ClassNotFoundException:org.apache.logging.log4j.core.impl.Log4jLogEvent$LogEventProxy

您使用什么 appender 將數據寫入 ActiveMQ? 我建議不要使用 Java 序列化來編寫將其序列化為 JSON 的日志事件,而是使用 RFC5424 布局或其他一些在讀取事件時不需要 Log4j2 jar 的格式。

由於 Log4event 放在隊列中,您可以檢查代理端是否有可用的 log4j2 jars。

我將以下 jars 從 log4j2 添加到 activeMQ 服務器 /lib 目錄以使其工作

log4j-api-2.6.1、log4j-core-2.6.1

我只記錄字符串,如果我嘗試記錄 ObjectMessages,隊列條目將不會在隊列管理器視圖中打開,JSP 失敗。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM