java - How to use log4j2 JMSAppender with ActiveMQ -


i struggling write simple poc program logs messages queue. tutorials , q&as find (here , here) use log4j version 1.2 , put messages onto topic , not onto queue. requirement log queue.

i followed documentation mentioned on official site, not able working.

i have log4j2 , activemq jars on classpath, have created queue "logqueue", able see queue in activemq web console , when try execute program write logs, following error:

error error creating jmsmanager using connectionfactory [connectionfactory] , destination [logqueue]. javax.naming.noinitialcontextexception: need specify class name in environment or system property, or applet parameter, or in application resource file:  java.naming.factory.initial     @ javax.naming.spi.namingmanager.getinitialcontext(namingmanager.java:662)     @ javax.naming.initialcontext.getdefaultinitctx(initialcontext.java:313) 

it looks jndi issue, not able figure out what. per log4j 1.2 tutorials, added jndi.properties file classpath value

queue.logqueue=logqueue 

but thats not helping apparently. below log4j2.xml

<?xml version="1.0" encoding="utf-8"?> <configuration status="warn" name="myapp" packages="">   <appenders>     <jms name="jmsqueue" destinationbindingname="logqueue"          factorybindingname="connectionfactory"          providerurl="tcp://localhost:61616"/>   </appenders>   <loggers>     <root level="all">       <appenderref ref="jmsqueue"/>     </root>   </loggers> </configuration> 

thanks !

adding factoryname="org.apache.activemq.jndi.activemqinitialcontextfactory" jms element solved problem.

the final jms element in log4j2.xml looks this:

<jms name="jmsqueue" destinationbindingname="logqueue"         factoryname="org.apache.activemq.jndi.activemqinitialcontextfactory"         factorybindingname="connectionfactory"         providerurl="tcp://localhost:61616"/> 

Comments

Popular posts from this blog

asp.net mvc - SSO between MVCForum and Umbraco7 -

Python Tkinter keyboard using bind -

ubuntu - Selenium Node Not Connecting to Hub, Not Opening Port -