|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.i2p.util.LogManager
public class LogManager
Manages the logging system, loading (and reloading) the configuration file, coordinating the log limits, and storing the set of log records pending. This also fires off a LogWriter thread that pulls pending records off and writes them where appropriate.
Field Summary | |
---|---|
static char |
CLASS
These define the characters in the format line of the config file |
static String |
CONFIG_LOCATION_DEFAULT
|
static String |
CONFIG_LOCATION_PROP
|
static char |
DATE
These define the characters in the format line of the config file |
static int |
DEFAULT_CONSOLEBUFFERSIZE
|
static String |
DEFAULT_DATEFORMAT
blank means default short date and medium time for the locale - see DateFormat |
static String |
DEFAULT_DEFAULTLEVEL
|
static boolean |
DEFAULT_DISPLAYONSCREEN
|
static String |
DEFAULT_FILENAME
|
static String |
DEFAULT_FILESIZE
|
static String |
DEFAULT_FORMAT
|
static String |
DEFAULT_ONSCREENLEVEL
|
static String |
DEFAULT_ROTATIONLIMIT
|
static String |
FILENAME_OVERRIDE_PROP
|
static char |
MESSAGE
These define the characters in the format line of the config file |
static char |
PRIORITY
These define the characters in the format line of the config file |
static String |
PROP_CONSOLEBUFFERSIZE
|
static String |
PROP_DATEFORMAT
|
static String |
PROP_DEFAULTLEVEL
|
static String |
PROP_DISPLAYONSCREEN
|
static String |
PROP_DISPLAYONSCREENLEVEL
|
static String |
PROP_FILENAME
|
static String |
PROP_FILESIZE
|
static String |
PROP_FORMAT
|
static String |
PROP_RECORD_PREFIX
|
static String |
PROP_ROTATIONLIMIT
|
static char |
THREAD
These define the characters in the format line of the config file |
Constructor Summary | |
---|---|
LogManager(I2PAppContext context)
|
Method Summary | |
---|---|
(package private) void |
addLog(Log log)
|
(package private) void |
addRecord(LogRecord record)
Used by Log to add records to the queue. |
String |
currentFile()
|
boolean |
displayOnScreen()
|
String |
getBaseLogfilename()
|
LogConsoleBuffer |
getBuffer()
|
int |
getConsoleBufferSize()
|
(package private) I2PAppContext |
getContext()
Convenience method for LogRecordFormatter |
SimpleDateFormat |
getDateFormat()
|
String |
getDateFormatPattern()
|
String |
getDefaultLimit()
|
int |
getDisplayOnScreenLevel()
|
int |
getFileSize()
|
static int |
getFileSize(String size)
Determine how many bytes are in the given formatted string (5m, 60g, 100k, etc) Size may be k, m, or g; a trailing b is ignored. |
char[] |
getFormat()
|
Properties |
getLimits()
Return a mapping of the explicit overrides - path prefix to (text formatted) limit. |
Log |
getLog(Class cls)
|
Log |
getLog(Class cls,
String name)
|
Log |
getLog(String name)
|
List<Log> |
getLogs()
now used by ConfigLogingHelper |
(package private) Queue<LogRecord> |
getQueue()
Zero-copy. |
int |
getRotationLimit()
|
(package private) void |
rereadConfig()
Called periodically by the log writer's thread |
boolean |
saveConfig()
|
void |
setBaseLogfilename(String filenamePattern)
|
void |
setConfig(String filename)
|
void |
setConsoleBufferSize(int numRecords)
Deprecated. unused |
boolean |
setDateFormat(String format)
Update the date format |
void |
setDefaultLimit(String lim)
|
void |
setDisplayOnScreen(boolean yes)
Deprecated. unused |
void |
setDisplayOnScreenLevel(int level)
Deprecated. unused |
void |
setFileSize(int numBytes)
Update the log file size limit |
void |
setFormat(char[] fmt)
|
void |
setLimits(Properties limits)
Update the existing limit overrides |
void |
shutdown()
public static void main(String args[]) { I2PAppContext ctx = new I2PAppContext(); Log l1 = ctx.logManager().getLog("test.1"); Log l2 = ctx.logManager().getLog("test.2"); Log l21 = ctx.logManager().getLog("test.2.1"); Log l = ctx.logManager().getLog("test"); l.debug("this should fail"); l.info("this should pass"); l1.warn("this should pass"); l1.info("this should fail"); l2.error("this should fail"); l21.debug("this should pass"); l1.error("test exception", new Exception("test")); l1.error("test exception", new Exception("test")); try { Thread.sleep(2 * 1000); } catch (Throwable t) { // nop } System.exit(0); } |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final String CONFIG_LOCATION_PROP
public static final String FILENAME_OVERRIDE_PROP
public static final String CONFIG_LOCATION_DEFAULT
public static final char DATE
public static final char CLASS
public static final char THREAD
public static final char PRIORITY
public static final char MESSAGE
public static final String PROP_FORMAT
public static final String PROP_DATEFORMAT
public static final String PROP_FILENAME
public static final String PROP_FILESIZE
public static final String PROP_ROTATIONLIMIT
public static final String PROP_DISPLAYONSCREEN
public static final String PROP_CONSOLEBUFFERSIZE
public static final String PROP_DISPLAYONSCREENLEVEL
public static final String PROP_DEFAULTLEVEL
public static final String PROP_RECORD_PREFIX
public static final String DEFAULT_FORMAT
public static final String DEFAULT_DATEFORMAT
public static final String DEFAULT_FILENAME
public static final String DEFAULT_FILESIZE
public static final boolean DEFAULT_DISPLAYONSCREEN
public static final int DEFAULT_CONSOLEBUFFERSIZE
public static final String DEFAULT_ROTATIONLIMIT
public static final String DEFAULT_DEFAULTLEVEL
public static final String DEFAULT_ONSCREENLEVEL
Constructor Detail |
---|
public LogManager(I2PAppContext context)
Method Detail |
---|
public Log getLog(Class cls)
public Log getLog(String name)
public Log getLog(Class cls, String name)
public List<Log> getLogs()
void addLog(Log log)
public LogConsoleBuffer getBuffer()
public void setDisplayOnScreen(boolean yes)
public boolean displayOnScreen()
public int getDisplayOnScreenLevel()
public void setDisplayOnScreenLevel(int level)
public int getConsoleBufferSize()
public void setConsoleBufferSize(int numRecords)
public void setConfig(String filename)
public String currentFile()
void addRecord(LogRecord record)
void rereadConfig()
public void setLimits(Properties limits)
limits
- mapping of prefix to log level string (not the log #)public boolean setDateFormat(String format)
format
- null or empty string means use default format for the locale
(with a SHORT date and a MEDIUM time - see DateFormat)
public void setFileSize(int numBytes)
public String getDefaultLimit()
public void setDefaultLimit(String lim)
public Properties getLimits()
public static int getFileSize(String size)
public String getBaseLogfilename()
public void setBaseLogfilename(String filenamePattern)
public int getFileSize()
public int getRotationLimit()
public boolean saveConfig()
Queue<LogRecord> getQueue()
public char[] getFormat()
public void setFormat(char[] fmt)
public SimpleDateFormat getDateFormat()
public String getDateFormatPattern()
public void shutdown()
I2PAppContext getContext()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |