Author: dejanb
Date: Tue Aug 11 11:57:00 2009
New Revision: 803078
URL: http://svn.apache.org/viewvc?rev=803078&view=rev
Log:
https://issues.apache.org/activemq/browse/AMQ-1473 - adding example for log4j
jms appender
Added:
activemq/trunk/assembly/src/release/example/src/Log4jJMSAppenderExample.java
activemq/trunk/assembly/src/release/example/src/jndi.properties
activemq/trunk/assembly/src/release/example/src/log4j-jms.properties
Modified:
activemq/trunk/assembly/src/release/example/build.xml
Modified: activemq/trunk/assembly/src/release/example/build.xml
URL:
http://svn.apache.org/viewvc/activemq/trunk/assembly/src/release/example/build.xml?rev=803078&r1=803077&r2=803078&view=diff
==============================================================================
--- activemq/trunk/assembly/src/release/example/build.xml (original)
+++ activemq/trunk/assembly/src/release/example/build.xml Tue Aug 11 11:57:00
2009
@@ -298,4 +298,12 @@
</java>
</target>
+ <target name="log4j-jms" depends="compile" description="Runs a Log4j
JMS Appender example">
+ <echo>Running a Log4j JMS Appender example</echo>
+ <java classname="Log4jJMSAppenderExample" fork="yes"
maxmemory="100M">
+ <classpath refid="javac.classpath" />
+ <jvmarg value="-Dlog4j.configuration=log4j-jms.properties" />
+ </java>
+ </target>
+
</project>
Added:
activemq/trunk/assembly/src/release/example/src/Log4jJMSAppenderExample.java
URL:
http://svn.apache.org/viewvc/activemq/trunk/assembly/src/release/example/src/Log4jJMSAppenderExample.java?rev=803078&view=auto
==============================================================================
---
activemq/trunk/assembly/src/release/example/src/Log4jJMSAppenderExample.java
(added)
+++
activemq/trunk/assembly/src/release/example/src/Log4jJMSAppenderExample.java
Tue Aug 11 11:57:00 2009
@@ -0,0 +1,70 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import javax.jms.Connection;
+import javax.jms.Message;
+import javax.jms.MessageConsumer;
+import javax.jms.MessageListener;
+import javax.jms.Session;
+
+import org.apache.activemq.ActiveMQConnectionFactory;
+import org.apache.activemq.command.ActiveMQObjectMessage;
+import org.apache.log4j.Logger;
+import org.apache.log4j.spi.LoggingEvent;
+
+
+/**
+ * A simple example of log4j jms appender in conjuction with ActiveMQ
+ */
+public class Log4jJMSAppenderExample implements MessageListener {
+
+ public Log4jJMSAppenderExample() throws Exception {
+ // create a logTopic topic consumer
+ ActiveMQConnectionFactory factory = new
ActiveMQConnectionFactory("tcp://localhost:61616");
+ Connection conn = factory.createConnection();
+ Session sess = conn.createSession(false,
Session.AUTO_ACKNOWLEDGE);
+ conn.start();
+ MessageConsumer consumer =
sess.createConsumer(sess.createTopic("logTopic"));
+ consumer.setMessageListener(this);
+ // log a message
+ Logger log = Logger.getLogger(Log4jJMSAppenderExample.class);
+ log.info("Test log");
+ // clean up
+ Thread.sleep(1000);
+ consumer.close();
+ sess.close();
+ conn.close();
+ System.exit(1);
+ }
+
+ public static void main(String[] args) throws Exception {
+ new Log4jJMSAppenderExample();
+ }
+
+ public void onMessage(Message message) {
+ try {
+ // receive log event in your consumer
+ LoggingEvent event =
(LoggingEvent)((ActiveMQObjectMessage)message).getObject();
+ System.out.println("Received log [" + event.getLevel()
+ "]: "+ event.getMessage());
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+
+
+}
\ No newline at end of file
Added: activemq/trunk/assembly/src/release/example/src/jndi.properties
URL:
http://svn.apache.org/viewvc/activemq/trunk/assembly/src/release/example/src/jndi.properties?rev=803078&view=auto
==============================================================================
--- activemq/trunk/assembly/src/release/example/src/jndi.properties (added)
+++ activemq/trunk/assembly/src/release/example/src/jndi.properties Tue Aug 11
11:57:00 2009
@@ -0,0 +1,17 @@
+## ---------------------------------------------------------------------------
+## Licensed to the Apache Software Foundation (ASF) under one or more
+## contributor license agreements. See the NOTICE file distributed with
+## this work for additional information regarding copyright ownership.
+## The ASF licenses this file to You under the Apache License, Version 2.0
+## (the "License"); you may not use this file except in compliance with
+## the License. You may obtain a copy of the License at
+##
+## http://www.apache.org/licenses/LICENSE-2.0
+##
+## Unless required by applicable law or agreed to in writing, software
+## distributed under the License is distributed on an "AS IS" BASIS,
+## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+## See the License for the specific language governing permissions and
+## limitations under the License.
+## ---------------------------------------------------------------------------
+topic.logTopic=logTopic
\ No newline at end of file
Added: activemq/trunk/assembly/src/release/example/src/log4j-jms.properties
URL:
http://svn.apache.org/viewvc/activemq/trunk/assembly/src/release/example/src/log4j-jms.properties?rev=803078&view=auto
==============================================================================
--- activemq/trunk/assembly/src/release/example/src/log4j-jms.properties (added)
+++ activemq/trunk/assembly/src/release/example/src/log4j-jms.properties Tue
Aug 11 11:57:00 2009
@@ -0,0 +1,31 @@
+## ---------------------------------------------------------------------------
+## Licensed to the Apache Software Foundation (ASF) under one or more
+## contributor license agreements. See the NOTICE file distributed with
+## this work for additional information regarding copyright ownership.
+## The ASF licenses this file to You under the Apache License, Version 2.0
+## (the "License"); you may not use this file except in compliance with
+## the License. You may obtain a copy of the License at
+##
+## http://www.apache.org/licenses/LICENSE-2.0
+##
+## Unless required by applicable law or agreed to in writing, software
+## distributed under the License is distributed on an "AS IS" BASIS,
+## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+## See the License for the specific language governing permissions and
+## limitations under the License.
+## ---------------------------------------------------------------------------
+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
\ No newline at end of file