public class SimpleAndroidLog extends Object implements AndroidLog, Serializable
Implementation of Log for Android platform that sends all enabled log messages, for all defined loggers, to the Android logging System. The following system properties are supported to configure the behavior of this logger:
org.apache.commons.logging.androidlog.defaultlog - Default logging detail level for all instances of AndroidLog. Must be one of
("trace", "debug", "info", "warn", "error", or "fatal"). If not specified, defaults to "info".org.apache.commons.logging.androidlog.log.xxxxx - Logging detail level for a AndroidLog instance named "xxxxx". Must be one of
("trace", "debug", "info", "warn", "error", or "fatal"). If not specified, the default logging detail level is used.org.apache.commons.logging.androidlog.showlogname - Set to true if you want the Log instance name to be included in
output messages. Defaults to false.org.apache.commons.logging.androidlog.showShortLogname - Set to true if you want the last component of the name to be
included in output messages. Defaults to true.org.apache.commons.logging.androidlog.showdatetime - Set to true if you want the current date and time to be included
in output messages. Default is false.org.apache.commons.logging.androidlog.dateTimeFormat - The date and time format to be used in the output messages. The pattern
describing the date and time format is the same that is used in java.text.SimpleDateFormat. If the format is not specified or is
invalid, the default format is used. The default format is yyyy/MM/dd HH:mm:ss:SSS zzz.
In addition to looking for system properties with the names specified above, this implementation also checks for a class loader resource named
"androidlog.properties", and includes any matching definitions from this resource (if it exists).
| Modifier and Type | Field and Description |
|---|---|
protected static Properties |
androidLogProps
Properties loaded from androidlog.properties
|
protected int |
currentLogLevel
The current log level
|
protected static DateFormat |
dateFormatter
Used to format times.
|
protected static String |
dateTimeFormat
The date and time format to use in the log message
|
protected static String |
DEFAULT_DATE_TIME_FORMAT
The default format to use when formating dates
|
static int |
LOG_LEVEL_ALL
Enable all logging levels
|
static int |
LOG_LEVEL_DEBUG
"Debug" level logging.
|
static int |
LOG_LEVEL_ERROR
"Error" level logging.
|
static int |
LOG_LEVEL_FATAL
"Fatal" level logging.
|
static int |
LOG_LEVEL_INFO
"Info" level logging.
|
static int |
LOG_LEVEL_OFF
Enable no logging levels
|
static int |
LOG_LEVEL_TRACE
"Trace" level logging.
|
static int |
LOG_LEVEL_WARN
"Warn" level logging.
|
protected String |
logName
The name of this android log instance
|
protected static boolean |
showDateTime
Include the current time in the log message
|
protected static boolean |
showLevel
Include the current time in the log message
|
protected static boolean |
showLogName
Include the instance name in the log message?
|
protected static boolean |
showShortName
Include the short name ( last component ) of the logger in the log message.
|
protected static boolean |
showShortTag
Include the short tag ( last component ) of the logger in the android log cat.
|
protected static String |
systemPrefix
All system properties used by
AndroidLog start with this |
| Constructor and Description |
|---|
SimpleAndroidLog(String name)
Construct an Android log with given name.
|
| Modifier and Type | Method and Description |
|---|---|
void |
debug(Object message)
Logs a message with
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_DEBUG. |
void |
debug(Object message,
Throwable t)
Logs a message with
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_DEBUG. |
void |
error(Object message)
Logs a message with
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_ERROR. |
void |
error(Object message,
Throwable t)
Logs a message with
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_ERROR. |
void |
fatal(Object message)
Log a message with
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_FATAL. |
void |
fatal(Object message,
Throwable t)
Logs a message with
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_FATAL. |
protected static ClassLoader |
getClassLoader(Class<?> clazz) |
int |
getLevel()
Get logging level.
|
void |
info(Object message)
Logs a message with
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_INFO. |
void |
info(Object message,
Throwable t)
Logs a message with
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_INFO. |
boolean |
isDebugEnabled()
Are debug messages currently enabled?
|
boolean |
isErrorEnabled()
Are error messages currently enabled?
|
boolean |
isFatalEnabled()
Are fatal messages currently enabled?
|
boolean |
isInfoEnabled()
Are info messages currently enabled?
|
protected boolean |
isLevelEnabled(int logLevel)
Is the given log level currently enabled?
|
boolean |
isTraceEnabled()
Are trace messages currently enabled?
|
boolean |
isWarnEnabled()
Are warn messages currently enabled?
|
protected void |
log(int type,
Object message,
Throwable t)
Do the actual logging.
|
void |
setLevel(int currentLogLevel)
Set logging level.
|
void |
trace(Object message)
Logs a message with
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_TRACE. |
void |
trace(Object message,
Throwable t)
Logs a message with
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_TRACE. |
void |
warn(Object message)
Logs a message with
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_WARN. |
void |
warn(Object message,
Throwable t)
Logs a message with
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_WARN. |
protected void |
write(StringBuffer buffer)
Write the content of the message accumulated in the specified
StringBuffer to the appropriate output destination. |
protected static final String systemPrefix
AndroidLog start with thisprotected static final Properties androidLogProps
protected static final String DEFAULT_DATE_TIME_FORMAT
protected static boolean showLogName
protected static boolean showShortName
protected static boolean showDateTime
protected static String dateTimeFormat
protected static boolean showLevel
protected static boolean showShortTag
protected static DateFormat dateFormatter
Any code that accesses this object should first obtain a lock on it, ie use synchronized(dateFormatter); this requirement was introduced in 1.1.1 to fix an existing thread safety bug (SimpleDateFormat.format is not thread-safe).
public static final int LOG_LEVEL_TRACE
public static final int LOG_LEVEL_DEBUG
public static final int LOG_LEVEL_INFO
public static final int LOG_LEVEL_WARN
public static final int LOG_LEVEL_ERROR
public static final int LOG_LEVEL_FATAL
public static final int LOG_LEVEL_ALL
public static final int LOG_LEVEL_OFF
protected String logName
protected int currentLogLevel
public SimpleAndroidLog(String name)
name - log nameprotected static ClassLoader getClassLoader(Class<?> clazz)
public void setLevel(int currentLogLevel)
Set logging level.
currentLogLevel - new logging levelpublic int getLevel()
Get logging level.
protected void log(int type,
Object message,
Throwable t)
Do the actual logging. This method assembles the message and then calls write() to cause it to be written.
Calls Log to write log for the Android platform.
type - One of the LOG_LEVEL_XXX constants defining the log levelmessage - The message itself (typically a String)t - The exception whose stack trace should be loggedprotected void write(StringBuffer buffer)
Write the content of the message accumulated in the specified StringBuffer to the appropriate output destination. The default
implementation writes to System.err.
buffer - A StringBuffer containing the accumulated text to be loggedprotected boolean isLevelEnabled(int logLevel)
logLevel - is this level enabled?public final void debug(Object message)
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_DEBUG.debug in interface Logmessage - to logLog.debug(Object)public final void debug(Object message, Throwable t)
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_DEBUG.debug in interface Logmessage - to logt - log this causeLog.debug(Object, Throwable)public final void trace(Object message)
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_TRACE.trace in interface Logmessage - to logLog.trace(Object)public final void trace(Object message, Throwable t)
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_TRACE.trace in interface Logmessage - to logt - log this causeLog.trace(Object, Throwable)public final void info(Object message)
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_INFO.info in interface Logmessage - to logLog.info(Object)public final void info(Object message, Throwable t)
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_INFO.info in interface Logmessage - to logt - log this causeLog.info(Object, Throwable)public final void warn(Object message)
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_WARN.warn in interface Logmessage - to logLog.warn(Object)public final void warn(Object message, Throwable t)
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_WARN.warn in interface Logmessage - to logt - log this causeLog.warn(Object, Throwable)public final void error(Object message)
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_ERROR.error in interface Logmessage - to logLog.error(Object)public final void error(Object message, Throwable t)
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_ERROR.error in interface Logmessage - to logt - log this causeLog.error(Object, Throwable)public final void fatal(Object message)
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_FATAL.fatal in interface Logmessage - to logLog.fatal(Object)public final void fatal(Object message, Throwable t)
org.apache.commons.logging.impl.AndroidLog.LOG_LEVEL_FATAL.fatal in interface Logmessage - to logt - log this causeLog.fatal(Object, Throwable)public final boolean isDebugEnabled()
Are debug messages currently enabled?
This allows expensive operations such as String concatenation to be avoided when the message will be ignored by the logger.
isDebugEnabled in interface Logpublic final boolean isErrorEnabled()
Are error messages currently enabled?
This allows expensive operations such as String concatenation to be avoided when the message will be ignored by the logger.
isErrorEnabled in interface Logpublic final boolean isFatalEnabled()
Are fatal messages currently enabled?
This allows expensive operations such as String concatenation to be avoided when the message will be ignored by the logger.
isFatalEnabled in interface Logpublic final boolean isInfoEnabled()
Are info messages currently enabled?
This allows expensive operations such as String concatenation to be avoided when the message will be ignored by the logger.
isInfoEnabled in interface Logpublic final boolean isTraceEnabled()
Are trace messages currently enabled?
This allows expensive operations such as String concatenation to be avoided when the message will be ignored by the logger.
isTraceEnabled in interface Logpublic final boolean isWarnEnabled()
Are warn messages currently enabled?
This allows expensive operations such as String concatenation to be avoided when the message will be ignored by the logger.
isWarnEnabled in interface LogCopyright © 2014. All rights reserved.