Mercurial > hg > blitz_stable
comparison src/org/dancres/blitz/Logging.java @ 0:3dc0c5604566
Initial checkin of blitz 2.0 fcs - no installer yet.
author | Dan Creswell <dan.creswell@gmail.com> |
---|---|
date | Sat, 21 Mar 2009 11:00:06 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:3dc0c5604566 |
---|---|
1 package org.dancres.blitz; | |
2 | |
3 import java.io.IOException; | |
4 | |
5 import java.util.logging.*; | |
6 | |
7 import net.jini.config.ConfigurationException; | |
8 | |
9 import org.dancres.blitz.config.ConfigurationFactory; | |
10 | |
11 | |
12 /** | |
13 The source for logger instances. This allows centralized control of | |
14 default logging level etc. | |
15 */ | |
16 public class Logging { | |
17 private static Handler theConsole = new ConsoleHandler(); | |
18 // private static Handler theConsole; | |
19 | |
20 static { | |
21 // try { | |
22 //theConsole = new FileHandler("/tmp/blitz.log"); | |
23 theConsole.setLevel(Level.ALL); | |
24 //} catch (IOException anIOE) { | |
25 // } | |
26 } | |
27 | |
28 public static Logger newLogger(String aName) { | |
29 Logger myLogger = Logger.getLogger(aName); | |
30 | |
31 try { | |
32 /* | |
33 Allow user to override configuration of logging levels | |
34 from Blitz.config file | |
35 */ | |
36 Boolean myDisableConfig = (Boolean) | |
37 ConfigurationFactory.getEntry("ignoreLogConfig", Boolean.class, | |
38 new Boolean(false)); | |
39 | |
40 if (myDisableConfig.booleanValue()) { | |
41 return myLogger; | |
42 } | |
43 | |
44 Level myDefaultLevel = (Level) | |
45 ConfigurationFactory.getEntry("defaultLogLevel", Level.class, | |
46 Level.WARNING); | |
47 | |
48 | |
49 String myLevelName = aName + "LogLevel"; | |
50 myLevelName = myLevelName.replaceAll("\\.", "_"); | |
51 | |
52 // System.out.println("Looking for: " + myLevelName); | |
53 | |
54 Level myLevel = (Level) | |
55 ConfigurationFactory.getEntry(myLevelName, Level.class, | |
56 myDefaultLevel); | |
57 | |
58 // System.out.println("Logger: " + aName + ": " + myLevel); | |
59 myLogger.setLevel(myLevel); | |
60 | |
61 // If we've got a default logger it'll be sending to parent | |
62 // handlers | |
63 if (myLogger.getUseParentHandlers()) { | |
64 myLogger.setUseParentHandlers(false); | |
65 myLogger.addHandler(theConsole); | |
66 } | |
67 | |
68 } catch (ConfigurationException aCE) { | |
69 System.err.println("Error reading logging config"); | |
70 aCE.printStackTrace(System.err); | |
71 } | |
72 | |
73 return myLogger; | |
74 } | |
75 | |
76 public static Logger newLogger(String aName, Level aLevel) { | |
77 Logger myLogger = Logger.getLogger(aName); | |
78 | |
79 myLogger.setLevel(aLevel); | |
80 | |
81 return myLogger; | |
82 } | |
83 } |