Mercurial Hosting > luan
annotate src/luan/modules/logging/Log4j.java @ 1336:7483108154bb
minor logging
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Thu, 14 Feb 2019 05:22:22 -0700 |
parents | e0cf0d108a77 |
children | 6617763dfd76 |
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 |
1336 | 3 import java.util.Enumeration; |
376
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
4 import org.apache.log4j.Logger; |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
5 import org.apache.log4j.LogManager; |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
6 import org.apache.log4j.Hierarchy; |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
7 import org.apache.log4j.Level; |
1336 | 8 import org.apache.log4j.Appender; |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
9 import org.apache.log4j.spi.LoggerRepository; |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
10 import org.apache.log4j.spi.RootLogger; |
1332 | 11 import org.apache.log4j.spi.RepositorySelector; |
1333
25746915a241
merge Luan and LuanState
Franklin Schmidt <fschmidt@gmail.com>
parents:
1332
diff
changeset
|
12 import luan.Luan; |
376
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
13 import luan.LuanException; |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
14 import luan.LuanTable; |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
15 |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
16 |
1332 | 17 public final class Log4j { |
1336 | 18 private static final String KEY = "Logger.Repository"; |
19 private static final LoggerRepository defaultLoggerRepository = LogManager.getLoggerRepository(); | |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
20 |
1336 | 21 public static void newLoggerRepository(Luan luan) { |
22 Logger oldLogger = defaultLoggerRepository.getRootLogger(); | |
23 Logger newLogger = new RootLogger(Level.DEBUG); | |
24 LoggerRepository lr = new Hierarchy(newLogger); | |
25 for( Enumeration en = oldLogger.getAllAppenders(); en.hasMoreElements(); ) { | |
26 Appender appender = (Appender)en.nextElement(); | |
27 newLogger.addAppender(appender); | |
28 } | |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
29 luan.registry().put(KEY,lr); |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
30 } |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
31 |
1333
25746915a241
merge Luan and LuanState
Franklin Schmidt <fschmidt@gmail.com>
parents:
1332
diff
changeset
|
32 private static LoggerRepository getLoggerRepository(Luan luan) { |
1332 | 33 LoggerRepository lr = (LoggerRepository)luan.registry().get(KEY); |
34 return lr != null ? lr : defaultLoggerRepository; | |
35 } | |
36 | |
37 static { | |
38 LogManager.setRepositorySelector( new RepositorySelector() { | |
39 public LoggerRepository getLoggerRepository() { | |
1333
25746915a241
merge Luan and LuanState
Franklin Schmidt <fschmidt@gmail.com>
parents:
1332
diff
changeset
|
40 Luan luan = LuanLogger.luan(); |
1332 | 41 return luan==null ? defaultLoggerRepository : Log4j.getLoggerRepository(luan); |
42 } | |
43 }, new Object() ); | |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
44 } |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
45 |
1333
25746915a241
merge Luan and LuanState
Franklin Schmidt <fschmidt@gmail.com>
parents:
1332
diff
changeset
|
46 public static Logger getRootLogger(Luan luan) { |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
47 return getLoggerRepository(luan).getRootLogger(); |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
48 } |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
49 |
1333
25746915a241
merge Luan and LuanState
Franklin Schmidt <fschmidt@gmail.com>
parents:
1332
diff
changeset
|
50 public static Logger getLogger(Luan luan,String name) { |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
51 return getLoggerRepository(luan).getLogger(name); |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
52 } |
376
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
53 } |