You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Peter Chandler <pe...@sandia.gov> on 2019/03/13 01:56:46 UTC

activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Trying to configure log4j2 JMS Appender for activemq-artemis which uses JNDI
for the connection factory and destinations. 
Questions
1. How do I populate activemq-artemis's JNDI Service with the required
Objects? 
2. What names do I use in the Log4j2.xml? 

         <JMS name="jmsQueue" 
            
<b>factoryName*="org.apache.activemq.artemis.jndi.ActiveMQInitialContextFactory"
             *factoryBindingName*=*"ConnectionFactory"*
             providerURL="tcp://localhost:61616"
             *destinationBindingName* =*"jmsTest"*
             userName="xxx"
             password="xxx" >
            <JSONLayout compact="false" eventEol="true"/>
        </JMS>



--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Peter Chandler <pe...@sandia.gov>.
Justin, 

Thanks for trying to help! Some more details.

The runtime ERROR:

2019-03-13 18:50:56,415 main ERROR An exception occurred processing Appender
logMessagesJmsQueue
org.apache.logging.log4j.core.appender.AppenderLoggingException: Error
sending to JMS Manager 'logMessagesJmsQueue': JMS message producer not
available
        at
org.apache.logging.log4j.core.appender.mom.JmsManager.send(JmsManager.java:458)

jndi.properity file 

java.naming.factory.initial=org.apache.activemq.artemis.jndi.ActiveMQInitialContextFactory
connectionFactory.ConnectionFactory=tcp://localhost:61616
logMessages=queue.queues/logMessages

Updated log4j2.xml 

        <JMS name="logMessagesJmsQueue"
            
factoryName="org.apache.activemq.artemis.jndi.ActiveMQInitialContextFactory"
             factoryBindingName="ConnectionFactory"
             providerURL="tcp://localhost:61616"
             destinationBindingName ="logMessages"
             userName="xxx"
             password="xxx" >
            <JSONLayout compact="false" eventEol="true"/>
        </JMS>

The queue in atremis (pre-created)

org.apache.activemq.artemis:broker="0.0.0.0",component=addresses,address="logMessages",subcomponent=queues,routing-type="anycast",queue="logMessages"



--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Justin Bertram <jb...@apache.org>.
Based on your response I'm guessing you read the documentation and didn't
find it particularly helpful so let's start from the top.

I assume that when you say, "Trying to configure log4j2 JMS Appender for
activemq-artemis which uses JNDI for the connection factory and
destinations," that you've got a remote client using Log4j and you want to
configure it to send log messages to ActiveMQ Artemis. Is that correct?

If so, you just need to configure the client with the right JNDI
properties.

Note, all the JNDI configuration is done on the *client* side. There is no
Artemis "JNDI Service." For what it's worth, this is noted in the
documentation I cited:

  > Apache ActiveMQ Artemis does not have a JNDI server. Rather, it uses a
client-side JNDI implementation that relies on special properties set in
  > the environment to construct the appropriate JMS objects. In other
words, no objects are stored in JNDI on the Apache ActiveMQ Artemis server,
  > instead they are simply instantiated on the client based on the
provided configuration.

Therefore, configuring JNDI on the client shouldn't require a restart of
the broker.

The Log4j JMS appender's configuration apparently doesn't support setting
arbitrary InitialContext environment properties so you'll need to create a
jndi.properties file on the client and make sure it's on the classpath.
This is where you'll define the destination which the appender will use,
e.g.:

  queue.jmsTest=jmsTest

Then reference that from your JMS appender's configuration, e.g.:

         <JMS name="jmsQueue"

factoryName="org.apache.activemq.artemis.jndi.ActiveMQInitialContextFactory"
             factoryBindingName="ConnectionFactory"*
             providerURL="tcp://localhost:61616"
             destinationBindingName ="jmsTest"
             userName="xxx"
             password="xxx" >
            <JSONLayout compact="false" eventEol="true"/>
        </JMS>

I might have missed something in there, but that's the basic configuration
off the top of my head. Let me know if you have additional problems.


Justin

On Wed, Mar 13, 2019 at 11:43 AM Peter Chandler <pe...@sandia.gov> wrote:

> Of course.
> 1. I add some *stuff* to jndi.properties file.
> 2. Configure the log4j2.xml file with *stuff*
> 3. Restart activemq-artemis?
>
>
>
>
> --
> Sent from:
> http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html
>

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Peter Chandler <pe...@sandia.gov>.
Of course. 
1. I add some *stuff* to jndi.properties file.
2. Configure the log4j2.xml file with *stuff*
3. Restart activemq-artemis? 




--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Peter Chandler <pe...@sandia.gov>.
The default implementation for Spring Boot's SLF4J is Logback (Note:
Logback's last release was 2 years ago and has removed the JMSAppender).
SLF4J walks the classpath to find/bind an/first implementation i.e.,
Logback. Hence, remove logback and add log4j. If your a picture guy (see
attached) I changed spring boot from using the second column (the default),
to use the third column.

sfl4j_implementations.docx
<http://activemq.2283324.n4.nabble.com/file/t379443/sfl4j_implementations.docx>  



--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Peter Chandler <pe...@sandia.gov>.
The default implementation for Spring Boot's SLF4J is Logback (Note:
Logback's last release was 2 years ago and has removed the JMSAppender).
SLF4J walks the classpath to find/bind an/first implementation i.e.,
Logback. Hence, remove logback and add log4j. If your a picture guy (see
attached) I changed spring boot from using the second column (the default),
to use the third column. sfl4j_implementations.docx
<http://activemq.2283324.n4.nabble.com/file/t379443/sfl4j_implementations.docx>   



--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Justin Bertram <jb...@apache.org>.
Thanks for following up. I was just puzzling over this.


Justin

On Mon, Mar 18, 2019 at 7:37 PM Peter Chandler <pe...@sandia.gov> wrote:

> Justin,
>
> Got it working. Thanks!
>
>
> 1. remove logback from spring boot.
>            <dependency>
>             <groupId>org.springframework.boot</groupId>
>             <artifactId>spring-boot-starter</artifactId>
>             <exclusions>
>                 <exclusion>
>                     <groupId>org.springframework.boot</groupId>
>                     <artifactId>spring-boot-starter-logging</artifactId>
>                 </exclusion>
>             </exclusions>
>         </dependency>
> 2. Add artemis and log4j
>         <dependency>
>             <groupId>org.springframework.boot</groupId>
>             <artifactId>spring-boot-starter-artemis</artifactId>
>         </dependency>
>         <dependency>
>             <groupId>org.springframework.boot</groupId>
>             <artifactId>spring-boot-starter-log4j2</artifactId>
>         </dependency>
> 3. Configure property files (see attached).
>
>
>
> ArtemisLogging.docx
> <http://activemq.2283324.n4.nabble.com/file/t379443/ArtemisLogging.docx>
>
>
>
> --
> Sent from:
> http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html
>

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Peter Chandler <pe...@sandia.gov>.
Justin,

Got it working. Thanks!


1. remove logback from spring boot.
           <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
2. Add artemis and log4j
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-artemis</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-log4j2</artifactId>
        </dependency>
3. Configure property files (see attached). 



ArtemisLogging.docx
<http://activemq.2283324.n4.nabble.com/file/t379443/ArtemisLogging.docx>  



--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Peter Chandler <pe...@sandia.gov>.
Justin, Made the changes you suggested and got the same results.Full
stacktrace below.
Note: this issue has been un-answered on stack overflow for 3 months
https://stackoverflow.com/questions/53779984/springboot-log4j2-jms-appender-jms-message-producer-not-available
*/src/main/resources/Log4j2.xml *                           
*/src/main/resources/jndi.properties*java.naming.factory.initial=org.apache.activemq.artemis.jndi.ActiveMQInitialContextFactoryconnectionFactory.ConnectionFactory=tcp://localhost:61616queue.queue/logMessages=logMessages
*ERROR*2019-03-18 12:04:44,199 main ERROR An exception occurred processing
Appender logMessagesJmsQueue
org.apache.logging.log4j.core.appender.AppenderLoggingException: Error
sending to JMS Manager 'logMessagesJmsQueue': JMS message producer not
available        at
org.apache.logging.log4j.core.appender.mom.JmsManager.send(JmsManager.java:458)       
at
org.apache.logging.log4j.core.appender.mom.JmsAppender.append(JmsAppender.java:269)       
at
org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:156)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:129)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:120)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:84)       
at
org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:464)       
at
org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:448)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:431)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:406)       
at
org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:63)       
at org.apache.logging.log4j.core.Logger.logMessage(Logger.java:146)       
at
org.apache.logging.log4j.spi.AbstractLogger.tryLogMessage(AbstractLogger.java:2170)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageTrackRecursion(AbstractLogger.java:2125)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageSafely(AbstractLogger.java:2108)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:2007)       
at
org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1866)       
at org.apache.commons.logging.LogAdapter$Log4jLog.log(LogAdapter.java:241)       
at org.apache.commons.logging.LogAdapter$Log4jLog.info(LogAdapter.java:205)       
at
org.springframework.boot.StartupInfoLogger.logStarting(StartupInfoLogger.java:50)       
at
org.springframework.boot.SpringApplication.logStartupInfo(SpringApplication.java:661)       
at
org.springframework.boot.SpringApplication.prepareContext(SpringApplication.java:376)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:314)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1260)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1248)       
at
gov.sandia.ideas.logclient.LogClientApplication.main(LogClientApplication.java:35)       
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)        at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown
Source)        at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source)        at java.base/java.lang.reflect.Method.invoke(Unknown Source)       
at
org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)       
at
org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)2019-03-18
12:04:44.233 DEBUG S999706 --- [           main]
g.s.i.l.LogClientApplication             : Running with Spring Boot
v2.1.1.RELEASE, Spring v5.1.3.RELEASE2019-03-18 12:04:44,234 main ERROR An
exception occurred processing Appender logMessagesJmsQueue
org.apache.logging.log4j.core.appender.AppenderLoggingException: Error
sending to JMS Manager 'logMessagesJmsQueue': JMS message producer not
available        at
org.apache.logging.log4j.core.appender.mom.JmsManager.send(JmsManager.java:458)       
at
org.apache.logging.log4j.core.appender.mom.JmsAppender.append(JmsAppender.java:269)       
at
org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:156)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:129)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:120)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:84)       
at
org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:464)       
at
org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:448)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:431)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:406)       
at
org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:63)       
at org.apache.logging.log4j.core.Logger.logMessage(Logger.java:146)       
at
org.apache.logging.log4j.spi.AbstractLogger.tryLogMessage(AbstractLogger.java:2170)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageTrackRecursion(AbstractLogger.java:2125)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageSafely(AbstractLogger.java:2108)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:1985)       
at
org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1843)       
at org.apache.commons.logging.LogAdapter$Log4jLog.log(LogAdapter.java:245)       
at org.apache.commons.logging.LogAdapter$Log4jLog.debug(LogAdapter.java:215)       
at
org.springframework.boot.StartupInfoLogger.logStarting(StartupInfoLogger.java:53)       
at
org.springframework.boot.SpringApplication.logStartupInfo(SpringApplication.java:661)       
at
org.springframework.boot.SpringApplication.prepareContext(SpringApplication.java:376)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:314)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1260)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1248)       
at
gov.sandia.ideas.logclient.LogClientApplication.main(LogClientApplication.java:35)       
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)        at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown
Source)        at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source)        at java.base/java.lang.reflect.Method.invoke(Unknown Source)       
at
org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)       
at
org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)2019-03-18
12:04:44.237  INFO S999706 --- [           main]
g.s.i.l.LogClientApplication             : The following profiles are
active: default2019-03-18 12:04:44,239 main ERROR An exception occurred
processing Appender logMessagesJmsQueue
org.apache.logging.log4j.core.appender.AppenderLoggingException: Error
sending to JMS Manager 'logMessagesJmsQueue': JMS message producer not
available        at
org.apache.logging.log4j.core.appender.mom.JmsManager.send(JmsManager.java:458)       
at
org.apache.logging.log4j.core.appender.mom.JmsAppender.append(JmsAppender.java:269)       
at
org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:156)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:129)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:120)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:84)       
at
org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:464)       
at
org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:448)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:431)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:406)       
at
org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:63)       
at org.apache.logging.log4j.core.Logger.logMessage(Logger.java:146)       
at
org.apache.logging.log4j.spi.AbstractLogger.tryLogMessage(AbstractLogger.java:2170)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageTrackRecursion(AbstractLogger.java:2125)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageSafely(AbstractLogger.java:2108)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:2007)       
at
org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1866)       
at org.apache.commons.logging.LogAdapter$Log4jLog.log(LogAdapter.java:241)       
at org.apache.commons.logging.LogAdapter$Log4jLog.info(LogAdapter.java:205)       
at
org.springframework.boot.SpringApplication.logStartupProfileInfo(SpringApplication.java:679)       
at
org.springframework.boot.SpringApplication.prepareContext(SpringApplication.java:377)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:314)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1260)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1248)       
at
gov.sandia.ideas.logclient.LogClientApplication.main(LogClientApplication.java:35)       
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)        at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown
Source)        at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source)        at java.base/java.lang.reflect.Method.invoke(Unknown Source)       
at
org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)       
at
org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)2019-03-18
12:04:45.201  INFO S999706 --- [           main] o.a.a.b.BrokerService                   
: Using Persistence Adapter: MemoryPersistenceAdapter2019-03-18 12:04:45,202
main ERROR An exception occurred processing Appender logMessagesJmsQueue
org.apache.logging.log4j.core.appender.AppenderLoggingException: Error
sending to JMS Manager 'logMessagesJmsQueue': JMS message producer not
available        at
org.apache.logging.log4j.core.appender.mom.JmsManager.send(JmsManager.java:458)       
at
org.apache.logging.log4j.core.appender.mom.JmsAppender.append(JmsAppender.java:269)       
at
org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:156)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:129)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:120)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:84)       
at
org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:464)       
at
org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:448)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:431)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:406)       
at
org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:63)       
at org.apache.logging.log4j.core.Logger.logMessage(Logger.java:146)       
at
org.apache.logging.log4j.spi.AbstractLogger.tryLogMessage(AbstractLogger.java:2170)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageTrackRecursion(AbstractLogger.java:2125)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageSafely(AbstractLogger.java:2108)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:2019)       
at
org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1890)       
at org.apache.logging.slf4j.Log4jLogger.info(Log4jLogger.java:184)        at
org.apache.activemq.broker.BrokerService.doStartPersistenceAdapter(BrokerService.java:683)       
at
org.apache.activemq.broker.BrokerService.startPersistenceAdapter(BrokerService.java:671)       
at org.apache.activemq.broker.BrokerService.start(BrokerService.java:635)       
at
org.apache.activemq.transport.vm.VMTransportFactory.doCompositeConnect(VMTransportFactory.java:127)       
at
org.apache.activemq.transport.vm.VMTransportFactory.doConnect(VMTransportFactory.java:56)       
at
org.apache.activemq.transport.TransportFactory.connect(TransportFactory.java:65)       
at
org.apache.activemq.ActiveMQConnectionFactory.createTransport(ActiveMQConnectionFactory.java:331)       
at
org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:346)       
at
org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:304)       
at
org.apache.activemq.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:244)       
at
org.springframework.jms.connection.SingleConnectionFactory.doCreateConnection(SingleConnectionFactory.java:403)       
at
org.springframework.jms.connection.SingleConnectionFactory.initConnection(SingleConnectionFactory.java:343)       
at
org.springframework.jms.connection.SingleConnectionFactory.getConnection(SingleConnectionFactory.java:321)       
at
org.springframework.jms.connection.SingleConnectionFactory.createConnection(SingleConnectionFactory.java:236)       
at
org.springframework.jms.support.JmsAccessor.createConnection(JmsAccessor.java:196)       
at
org.springframework.jms.listener.AbstractJmsListeningContainer.createSharedConnection(AbstractJmsListeningContainer.java:411)       
at
org.springframework.jms.listener.AbstractJmsListeningContainer.establishSharedConnection(AbstractJmsListeningContainer.java:379)       
at
org.springframework.jms.listener.DefaultMessageListenerContainer.establishSharedConnection(DefaultMessageListenerContainer.java:818)       
at
org.springframework.jms.listener.AbstractJmsListeningContainer.doStart(AbstractJmsListeningContainer.java:291)       
at
org.springframework.jms.listener.AbstractJmsListeningContainer.start(AbstractJmsListeningContainer.java:276)       
at
org.springframework.jms.listener.DefaultMessageListenerContainer.start(DefaultMessageListenerContainer.java:612)       
at
org.springframework.jms.config.JmsListenerEndpointRegistry.startIfNecessary(JmsListenerEndpointRegistry.java:242)       
at
org.springframework.jms.config.JmsListenerEndpointRegistry.start(JmsListenerEndpointRegistry.java:205)       
at
org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:182)       
at
org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:53)       
at
org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:360)       
at
org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:158)       
at
org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:122)       
at
org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:879)       
at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:549)       
at
org.springframework.boot.SpringApplication.refresh(SpringApplication.java:775)       
at
org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:316)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1260)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1248)       
at
gov.sandia.ideas.logclient.LogClientApplication.main(LogClientApplication.java:35)       
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)        at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown
Source)        at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source)        at java.base/java.lang.reflect.Method.invoke(Unknown Source)       
at
org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)       
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)
console.JPG <http://activemq.2283324.n4.nabble.com/file/t379443/console.JPG>  



--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Peter Chandler <pe...@sandia.gov>.
Justin, Made the changes you suggested and got the same results.Full
stacktrace below.Note: this issue has been un-answered on stack overflow for
3 months
https://stackoverflow.com/questions/53779984/springboot-log4j2-jms-appender-jms-message-producer-not-available*/src/main/resources/Log4j2.xml
*                           
*/src/main/resources/jndi.properties*java.naming.factory.initial=org.apache.activemq.artemis.jndi.ActiveMQInitialContextFactoryconnectionFactory.ConnectionFactory=tcp://localhost:61616queue.queue/logMessages=logMessages*ERROR*2019-03-18
12:04:44,199 main ERROR An exception occurred processing Appender
logMessagesJmsQueue
org.apache.logging.log4j.core.appender.AppenderLoggingException: Error
sending to JMS Manager 'logMessagesJmsQueue': JMS message producer not
available        at
org.apache.logging.log4j.core.appender.mom.JmsManager.send(JmsManager.java:458)       
at
org.apache.logging.log4j.core.appender.mom.JmsAppender.append(JmsAppender.java:269)       
at
org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:156)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:129)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:120)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:84)       
at
org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:464)       
at
org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:448)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:431)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:406)       
at
org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:63)       
at org.apache.logging.log4j.core.Logger.logMessage(Logger.java:146)       
at
org.apache.logging.log4j.spi.AbstractLogger.tryLogMessage(AbstractLogger.java:2170)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageTrackRecursion(AbstractLogger.java:2125)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageSafely(AbstractLogger.java:2108)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:2007)       
at
org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1866)       
at org.apache.commons.logging.LogAdapter$Log4jLog.log(LogAdapter.java:241)       
at org.apache.commons.logging.LogAdapter$Log4jLog.info(LogAdapter.java:205)       
at
org.springframework.boot.StartupInfoLogger.logStarting(StartupInfoLogger.java:50)       
at
org.springframework.boot.SpringApplication.logStartupInfo(SpringApplication.java:661)       
at
org.springframework.boot.SpringApplication.prepareContext(SpringApplication.java:376)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:314)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1260)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1248)       
at
gov.sandia.ideas.logclient.LogClientApplication.main(LogClientApplication.java:35)       
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)        at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown
Source)        at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source)        at java.base/java.lang.reflect.Method.invoke(Unknown Source)       
at
org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)       
at
org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)2019-03-18
12:04:44.233 DEBUG S999706 --- [           main]
g.s.i.l.LogClientApplication             : Running with Spring Boot
v2.1.1.RELEASE, Spring v5.1.3.RELEASE2019-03-18 12:04:44,234 main ERROR An
exception occurred processing Appender logMessagesJmsQueue
org.apache.logging.log4j.core.appender.AppenderLoggingException: Error
sending to JMS Manager 'logMessagesJmsQueue': JMS message producer not
available        at
org.apache.logging.log4j.core.appender.mom.JmsManager.send(JmsManager.java:458)       
at
org.apache.logging.log4j.core.appender.mom.JmsAppender.append(JmsAppender.java:269)       
at
org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:156)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:129)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:120)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:84)       
at
org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:464)       
at
org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:448)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:431)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:406)       
at
org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:63)       
at org.apache.logging.log4j.core.Logger.logMessage(Logger.java:146)       
at
org.apache.logging.log4j.spi.AbstractLogger.tryLogMessage(AbstractLogger.java:2170)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageTrackRecursion(AbstractLogger.java:2125)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageSafely(AbstractLogger.java:2108)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:1985)       
at
org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1843)       
at org.apache.commons.logging.LogAdapter$Log4jLog.log(LogAdapter.java:245)       
at org.apache.commons.logging.LogAdapter$Log4jLog.debug(LogAdapter.java:215)       
at
org.springframework.boot.StartupInfoLogger.logStarting(StartupInfoLogger.java:53)       
at
org.springframework.boot.SpringApplication.logStartupInfo(SpringApplication.java:661)       
at
org.springframework.boot.SpringApplication.prepareContext(SpringApplication.java:376)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:314)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1260)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1248)       
at
gov.sandia.ideas.logclient.LogClientApplication.main(LogClientApplication.java:35)       
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)        at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown
Source)        at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source)        at java.base/java.lang.reflect.Method.invoke(Unknown Source)       
at
org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)       
at
org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)2019-03-18
12:04:44.237  INFO S999706 --- [           main]
g.s.i.l.LogClientApplication             : The following profiles are
active: default2019-03-18 12:04:44,239 main ERROR An exception occurred
processing Appender logMessagesJmsQueue
org.apache.logging.log4j.core.appender.AppenderLoggingException: Error
sending to JMS Manager 'logMessagesJmsQueue': JMS message producer not
available        at
org.apache.logging.log4j.core.appender.mom.JmsManager.send(JmsManager.java:458)       
at
org.apache.logging.log4j.core.appender.mom.JmsAppender.append(JmsAppender.java:269)       
at
org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:156)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:129)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:120)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:84)       
at
org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:464)       
at
org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:448)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:431)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:406)       
at
org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:63)       
at org.apache.logging.log4j.core.Logger.logMessage(Logger.java:146)       
at
org.apache.logging.log4j.spi.AbstractLogger.tryLogMessage(AbstractLogger.java:2170)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageTrackRecursion(AbstractLogger.java:2125)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageSafely(AbstractLogger.java:2108)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:2007)       
at
org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1866)       
at org.apache.commons.logging.LogAdapter$Log4jLog.log(LogAdapter.java:241)       
at org.apache.commons.logging.LogAdapter$Log4jLog.info(LogAdapter.java:205)       
at
org.springframework.boot.SpringApplication.logStartupProfileInfo(SpringApplication.java:679)       
at
org.springframework.boot.SpringApplication.prepareContext(SpringApplication.java:377)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:314)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1260)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1248)       
at
gov.sandia.ideas.logclient.LogClientApplication.main(LogClientApplication.java:35)       
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)        at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown
Source)        at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source)        at java.base/java.lang.reflect.Method.invoke(Unknown Source)       
at
org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)       
at
org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)2019-03-18
12:04:45.201  INFO S999706 --- [           main] o.a.a.b.BrokerService                   
: Using Persistence Adapter: MemoryPersistenceAdapter2019-03-18 12:04:45,202
main ERROR An exception occurred processing Appender logMessagesJmsQueue
org.apache.logging.log4j.core.appender.AppenderLoggingException: Error
sending to JMS Manager 'logMessagesJmsQueue': JMS message producer not
available        at
org.apache.logging.log4j.core.appender.mom.JmsManager.send(JmsManager.java:458)       
at
org.apache.logging.log4j.core.appender.mom.JmsAppender.append(JmsAppender.java:269)       
at
org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:156)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:129)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:120)       
at
org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:84)       
at
org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:464)       
at
org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:448)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:431)       
at
org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:406)       
at
org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:63)       
at org.apache.logging.log4j.core.Logger.logMessage(Logger.java:146)       
at
org.apache.logging.log4j.spi.AbstractLogger.tryLogMessage(AbstractLogger.java:2170)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageTrackRecursion(AbstractLogger.java:2125)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessageSafely(AbstractLogger.java:2108)       
at
org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:2019)       
at
org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1890)       
at org.apache.logging.slf4j.Log4jLogger.info(Log4jLogger.java:184)        at
org.apache.activemq.broker.BrokerService.doStartPersistenceAdapter(BrokerService.java:683)       
at
org.apache.activemq.broker.BrokerService.startPersistenceAdapter(BrokerService.java:671)       
at org.apache.activemq.broker.BrokerService.start(BrokerService.java:635)       
at
org.apache.activemq.transport.vm.VMTransportFactory.doCompositeConnect(VMTransportFactory.java:127)       
at
org.apache.activemq.transport.vm.VMTransportFactory.doConnect(VMTransportFactory.java:56)       
at
org.apache.activemq.transport.TransportFactory.connect(TransportFactory.java:65)       
at
org.apache.activemq.ActiveMQConnectionFactory.createTransport(ActiveMQConnectionFactory.java:331)       
at
org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:346)       
at
org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:304)       
at
org.apache.activemq.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:244)       
at
org.springframework.jms.connection.SingleConnectionFactory.doCreateConnection(SingleConnectionFactory.java:403)       
at
org.springframework.jms.connection.SingleConnectionFactory.initConnection(SingleConnectionFactory.java:343)       
at
org.springframework.jms.connection.SingleConnectionFactory.getConnection(SingleConnectionFactory.java:321)       
at
org.springframework.jms.connection.SingleConnectionFactory.createConnection(SingleConnectionFactory.java:236)       
at
org.springframework.jms.support.JmsAccessor.createConnection(JmsAccessor.java:196)       
at
org.springframework.jms.listener.AbstractJmsListeningContainer.createSharedConnection(AbstractJmsListeningContainer.java:411)       
at
org.springframework.jms.listener.AbstractJmsListeningContainer.establishSharedConnection(AbstractJmsListeningContainer.java:379)       
at
org.springframework.jms.listener.DefaultMessageListenerContainer.establishSharedConnection(DefaultMessageListenerContainer.java:818)       
at
org.springframework.jms.listener.AbstractJmsListeningContainer.doStart(AbstractJmsListeningContainer.java:291)       
at
org.springframework.jms.listener.AbstractJmsListeningContainer.start(AbstractJmsListeningContainer.java:276)       
at
org.springframework.jms.listener.DefaultMessageListenerContainer.start(DefaultMessageListenerContainer.java:612)       
at
org.springframework.jms.config.JmsListenerEndpointRegistry.startIfNecessary(JmsListenerEndpointRegistry.java:242)       
at
org.springframework.jms.config.JmsListenerEndpointRegistry.start(JmsListenerEndpointRegistry.java:205)       
at
org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:182)       
at
org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:53)       
at
org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:360)       
at
org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:158)       
at
org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:122)       
at
org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:879)       
at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:549)       
at
org.springframework.boot.SpringApplication.refresh(SpringApplication.java:775)       
at
org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:316)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1260)       
at
org.springframework.boot.SpringApplication.run(SpringApplication.java:1248)       
at
gov.sandia.ideas.logclient.LogClientApplication.main(LogClientApplication.java:35)       
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)        at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown
Source)        at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
Source)        at java.base/java.lang.reflect.Method.invoke(Unknown Source)       
at
org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)       
at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)       
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)
console.JPG <http://activemq.2283324.n4.nabble.com/file/t379443/console.JPG>  



--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Peter Chandler <pe...@sandia.gov>.
Justin,

Thanks. I will give it a try.

Peter.



--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Justin Bertram <jb...@apache.org>.
For what it's worth, Artemis ships with a lot of JMS examples which use
jndi.properties.

Your jndi.properties is using this:

  logMessages=queue.queues/logMessages

This looks wrong to me. I think it should be:

  queue.queues/logMessages=logMessages

The first part ("queue.") tells the JNDI implementation that a queue is
being defined. The next bit ("queues/logMessages") indicates where the
queue will be bound in the context. The last bit ("=logMessages") tells the
JNDI implentation that this binding maps to an address/queue on the broker
whose name is "logMessages". This is outlined in the documentation I cited
previously.

Based on the above you should be using this in your JMS appender
configuration:

  destinationBindingName ="queues/logMessages"

The reference to port 5445 in the JNDI documentation should be changed to
be 61616. There is an acceptor listening on 5445 by default, but it's is
for legacy HornetQ clients.

Let me know if those configuration changes help.  If they don't help and if
it's at all possible please provide a stack-trace which provides more
detail about what the underlying error is from the JNDI implementation. The
previous stack-trace snippet only had details about the JMS appender
itself. At the very least provide the full stack trace so I can look up the
source to see what it's doing if necessary.


Justin

On Thu, Mar 14, 2019 at 8:08 PM Peter Chandler <pe...@sandia.gov> wrote:

> log4J-2, JMS Appender requires JNDI bindings. Hence looking for a Spring
> Boot, Artemis, JNDI example configuration.
>
>
>
> --
> Sent from:
> http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html
>

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Peter Chandler <pe...@sandia.gov>.
log4J-2, JMS Appender requires JNDI bindings. Hence looking for a Spring
Boot, Artemis, JNDI example configuration.



--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Peter Chandler <pe...@sandia.gov>.
For the record I have used the JMSAppender for the last 10+ year.

Dependencies. 

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.1.RELEASE</version>
        <relativePath/> 
    </parent>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-log4j2</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-activemq</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-artemis</artifactId>
        </dependency>

        
        <dependency>
            <groupId>com.lmax</groupId>
            <artifactId>disruptor</artifactId>
            <version>3.4.2</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>



--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Peter Chandler <pe...@sandia.gov>.
Is *port *a typo in the doc (HornetMQ leftover)?
connectionFactory.ConnectionFactory=tcp://myhost:5445



--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html

Re: activemq-artemis & JNDI & Spring Boot & log4j2 & JMS Appender.

Posted by Justin Bertram <jb...@apache.org>.
Have you taken a look at the ActiveMQ Artemis documentation [1] on this
subject?


Justin

[1] https://activemq.apache.org/artemis/docs/latest/using-jms.html (scroll
down to the "JNDI" section)

On Tue, Mar 12, 2019 at 9:42 PM Peter Chandler <pe...@sandia.gov> wrote:

> Trying to configure log4j2 JMS Appender for activemq-artemis which uses
> JNDI
> for the connection factory and destinations.
> Questions
> 1. How do I populate activemq-artemis's JNDI Service with the required
> Objects?
> 2. What names do I use in the Log4j2.xml?
>
>          <JMS name="jmsQueue"
>
>
> <b>factoryName*="org.apache.activemq.artemis.jndi.ActiveMQInitialContextFactory"
>              *factoryBindingName*=*"ConnectionFactory"*
>              providerURL="tcp://localhost:61616"
>              *destinationBindingName* =*"jmsTest"*
>              userName="xxx"
>              password="xxx" >
>             <JSONLayout compact="false" eventEol="true"/>
>         </JMS>
>
>
>
> --
> Sent from:
> http://activemq.2283324.n4.nabble.com/ActiveMQ-User-f2341805.html
>