1 package ch.qos.logback.classic.net;
2
3 import org.slf4j.LoggerFactory;
4
5 import ch.qos.logback.classic.Logger;
6 import ch.qos.logback.classic.LoggerContext;
7 import ch.qos.logback.core.util.StatusPrinter;
8
9 public class JMSTopicAppenderTestApp {
10
11 public static void main(String[] args) {
12 Logger logger = (Logger)LoggerFactory.getLogger(JMSTopicAppenderTestApp.class);
13 LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();
14 lc.reset();
15
16 JMSTopicAppender appender = new JMSTopicAppender();
17 appender.setContext(lc);
18 appender.setName("jmsTopic");
19 appender.setInitialContextFactoryName("org.apache.activemq.jndi.ActiveMQInitialContextFactory");
20
21 appender.setProviderURL("tcp://localhost:61616");
22
23
24 appender.setTopicBindingName("MyTopic");
25 appender.setTopicConnectionFactoryBindingName("ConnectionFactory");
26
27
28
29 appender.start();
30 logger.addAppender(appender);
31
32
33
34 for (int i = 0; i < 10000; i++) {
35 logger.debug("** Hello world. n=" + i);
36 }
37
38 long before = System.nanoTime();
39 for (int i = 0; i < 10000; i++) {
40 logger.debug("** Hello world. n=" + i);
41 }
42 long after = System.nanoTime();
43
44 System.out.println("Time per logs for 10'000 logs: " + (after-before)/10000);
45
46 StatusPrinter.print(lc.getStatusManager());
47 }
48
49 }