Make the logging context (the function we were in when we generated the
message) optional. git-svn-id: https://samskivert.googlecode.com/svn/trunk@1786 6335cc39-0255-0410-8fd6-9bcaacd3b74c
This commit is contained in:
@@ -37,6 +37,24 @@ import java.util.logging.SimpleFormatter;
|
|||||||
*/
|
*/
|
||||||
public class OneLineLogFormatter extends Formatter
|
public class OneLineLogFormatter extends Formatter
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* Creates a log formatter that will include the function from which a log
|
||||||
|
* entry was generated.
|
||||||
|
*/
|
||||||
|
public OneLineLogFormatter ()
|
||||||
|
{
|
||||||
|
this(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a log formatter that will optionally include or not include the
|
||||||
|
* function from which a log entry was generated.
|
||||||
|
*/
|
||||||
|
public OneLineLogFormatter (boolean showWhere)
|
||||||
|
{
|
||||||
|
_showWhere = showWhere;
|
||||||
|
}
|
||||||
|
|
||||||
// documentation inherited
|
// documentation inherited
|
||||||
public String format (LogRecord record)
|
public String format (LogRecord record)
|
||||||
{
|
{
|
||||||
@@ -50,24 +68,26 @@ public class OneLineLogFormatter extends Formatter
|
|||||||
buf.append(" ");
|
buf.append(" ");
|
||||||
buf.append(record.getLevel().getLocalizedName());
|
buf.append(record.getLevel().getLocalizedName());
|
||||||
|
|
||||||
// append the log method call context
|
if (_showWhere) {
|
||||||
buf.append(" ");
|
// append the log method call context
|
||||||
String where = record.getSourceClassName();
|
buf.append(" ");
|
||||||
boolean legacy = (where.indexOf("LoggingLogProvider") != -1);
|
String where = record.getSourceClassName();
|
||||||
if (where != null && !legacy) {
|
boolean legacy = (where.indexOf("LoggingLogProvider") != -1);
|
||||||
String logger = record.getLoggerName();
|
if (where != null && !legacy) {
|
||||||
if (logger != null && where.startsWith(logger) &&
|
String logger = record.getLoggerName();
|
||||||
where.length() > logger.length()) {
|
if (logger != null && where.startsWith(logger) &&
|
||||||
where = where.substring(logger.length()+1);
|
where.length() > logger.length()) {
|
||||||
|
where = where.substring(logger.length()+1);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
where = record.getLoggerName();
|
||||||
|
}
|
||||||
|
buf.append(where);
|
||||||
|
if (record.getSourceMethodName() != null && !legacy) {
|
||||||
|
buf.append(".");
|
||||||
|
buf.append(record.getSourceMethodName());
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
where = record.getLoggerName();
|
|
||||||
}
|
}
|
||||||
buf.append(where);
|
|
||||||
if (record.getSourceMethodName() != null && !legacy) {
|
|
||||||
buf.append(".");
|
|
||||||
buf.append(record.getSourceMethodName());
|
|
||||||
}
|
|
||||||
|
|
||||||
// append the message itself
|
// append the message itself
|
||||||
buf.append(": ");
|
buf.append(": ");
|
||||||
@@ -94,15 +114,25 @@ public class OneLineLogFormatter extends Formatter
|
|||||||
* formatter when formatting messages.
|
* formatter when formatting messages.
|
||||||
*/
|
*/
|
||||||
public static void configureDefaultHandler ()
|
public static void configureDefaultHandler ()
|
||||||
|
{
|
||||||
|
configureDefaultHandler(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Configures the default logging handler to use an instance of this
|
||||||
|
* formatter when formatting messages.
|
||||||
|
*/
|
||||||
|
public static void configureDefaultHandler (boolean showWhere)
|
||||||
{
|
{
|
||||||
Logger logger = LogManager.getLogManager().getLogger("");
|
Logger logger = LogManager.getLogManager().getLogger("");
|
||||||
Handler[] handlers = logger.getHandlers();
|
Handler[] handlers = logger.getHandlers();
|
||||||
OneLineLogFormatter formatter = new OneLineLogFormatter();
|
OneLineLogFormatter formatter = new OneLineLogFormatter(showWhere);
|
||||||
for (int ii = 0; ii < handlers.length; ii++) {
|
for (int ii = 0; ii < handlers.length; ii++) {
|
||||||
handlers[ii].setFormatter(formatter);
|
handlers[ii].setFormatter(formatter);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected boolean _showWhere;
|
||||||
protected Date _date = new Date();
|
protected Date _date = new Date();
|
||||||
protected SimpleDateFormat _format =
|
protected SimpleDateFormat _format =
|
||||||
new SimpleDateFormat("yyyy/MM/dd HH:mm:ss:SSS");
|
new SimpleDateFormat("yyyy/MM/dd HH:mm:ss:SSS");
|
||||||
|
|||||||
Reference in New Issue
Block a user