Mercurial Hosting > luan
annotate src/luan/modules/logging/LuanLogger.java @ 1454:219f2b937f2b
remove log4j
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Sun, 08 Mar 2020 14:11:30 -0600 |
parents | 27efb1fcbcb5 |
children | 8fbcc4747091 |
rev | line source |
---|---|
376
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
1 package luan.modules.logging; |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
2 |
1402
27efb1fcbcb5
move luan.lib to goodjava
Franklin Schmidt <fschmidt@gmail.com>
parents:
1393
diff
changeset
|
3 import goodjava.logging.Logger; |
27efb1fcbcb5
move luan.lib to goodjava
Franklin Schmidt <fschmidt@gmail.com>
parents:
1393
diff
changeset
|
4 import goodjava.logging.LoggerFactory; |
1454 | 5 import goodjava.logger.LoggingFactory; |
6 import goodjava.logger.GoodLoggerFactory; | |
7 import goodjava.logger.Appender; | |
8 import goodjava.logger.ThreadLocalAppender; | |
9 import goodjava.logger.SimpleConfigurer; | |
10 import goodjava.logger.Level; | |
1333
25746915a241
merge Luan and LuanState
Franklin Schmidt <fschmidt@gmail.com>
parents:
1332
diff
changeset
|
11 import luan.Luan; |
376
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
12 import luan.LuanException; |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
13 |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
14 |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
15 public final class LuanLogger { |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
16 private final Logger logger; |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
17 |
1454 | 18 public LuanLogger(String name) { |
19 this.logger = LoggerFactory.getLogger(name); | |
376
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
20 } |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
21 |
1334
c88b486a9511
make some Luan methods static
Franklin Schmidt <fschmidt@gmail.com>
parents:
1333
diff
changeset
|
22 public void error(Object obj) throws LuanException { |
c88b486a9511
make some Luan methods static
Franklin Schmidt <fschmidt@gmail.com>
parents:
1333
diff
changeset
|
23 logger.error( Luan.luanToString(obj) ); |
376
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
24 } |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
25 |
1334
c88b486a9511
make some Luan methods static
Franklin Schmidt <fschmidt@gmail.com>
parents:
1333
diff
changeset
|
26 public void warn(Object obj) throws LuanException { |
c88b486a9511
make some Luan methods static
Franklin Schmidt <fschmidt@gmail.com>
parents:
1333
diff
changeset
|
27 logger.warn( Luan.luanToString(obj) ); |
376
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
28 } |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
29 |
1334
c88b486a9511
make some Luan methods static
Franklin Schmidt <fschmidt@gmail.com>
parents:
1333
diff
changeset
|
30 public void info(Object obj) throws LuanException { |
c88b486a9511
make some Luan methods static
Franklin Schmidt <fschmidt@gmail.com>
parents:
1333
diff
changeset
|
31 logger.info( Luan.luanToString(obj) ); |
376
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
32 } |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
33 |
1334
c88b486a9511
make some Luan methods static
Franklin Schmidt <fschmidt@gmail.com>
parents:
1333
diff
changeset
|
34 public void debug(Object obj) throws LuanException { |
c88b486a9511
make some Luan methods static
Franklin Schmidt <fschmidt@gmail.com>
parents:
1333
diff
changeset
|
35 logger.debug( Luan.luanToString(obj) ); |
376
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
36 } |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
37 |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
38 |
1454 | 39 private static final String KEY = "Logger.Appender"; |
40 private static volatile Appender globalAppender = GoodLoggerFactory.DEFAULT_APPENDER; | |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
41 |
1454 | 42 public static synchronized void initThreadLogging() { |
43 if( !(globalAppender instanceof ThreadLocalAppender) ) { | |
44 if( !(LoggerFactory.implementation instanceof LoggingFactory) ) | |
45 throw new RuntimeException("must use goodjava.logger for thread logging"); | |
46 globalAppender = new ThreadLocalAppender(globalAppender); | |
47 configure(); | |
1332 | 48 } |
1393 | 49 } |
50 | |
1454 | 51 public static void startThreadLogging(Luan luan) { |
52 if( !(globalAppender instanceof ThreadLocalAppender) ) | |
53 return; | |
54 ThreadLocalAppender tla = (ThreadLocalAppender)globalAppender; | |
55 Appender appender = (Appender)luan.registry().get(KEY); | |
56 if( appender == null ) | |
57 appender = tla.defaultAppender; | |
58 tla.threadLocal.set(appender); | |
59 } | |
60 | |
61 public static void endThreadLogging() { | |
62 if( !(globalAppender instanceof ThreadLocalAppender) ) | |
63 return; | |
64 ThreadLocalAppender tla = (ThreadLocalAppender)globalAppender; | |
65 tla.threadLocal.remove(); | |
66 } | |
67 | |
68 public static boolean isConfigured() { | |
69 if( !(LoggerFactory.implementation instanceof LoggingFactory) ) | |
70 return true; | |
71 return GoodLoggerFactory.getConfigurer() != GoodLoggerFactory.DEFAULT_CONFIGURER; | |
72 } | |
73 | |
74 public static void configure(Luan luan,Appender appender) { | |
75 if( globalAppender instanceof ThreadLocalAppender ) { | |
76 ThreadLocalAppender tla = (ThreadLocalAppender)globalAppender; | |
77 if( tla.threadLocal.get() != null ) { | |
78 luan.registry().put(KEY,appender); | |
79 tla.threadLocal.set(appender); | |
80 } else { | |
81 tla.defaultAppender = appender; | |
82 } | |
83 } else { | |
84 globalAppender = appender; | |
85 configure(); | |
1332 | 86 } |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
87 } |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
88 |
1454 | 89 private static void configure() { |
90 GoodLoggerFactory.setConfigurer( new SimpleConfigurer(Level.INFO,globalAppender) ); | |
1392 | 91 } |
92 | |
376
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
93 } |