Bukkit/src/main/java/org/bukkit/plugin/PluginLogger.java
rmichela 5ca940b907 [Bleeding] Added Plugin.getLogger() which returns a java.util.Logger that prefixes messages with the plugin name.
Note: the server when enabling or disabling a plugin will now by default log this.
2012-01-17 19:45:36 +01:00

35 lines
990 B
Java

package org.bukkit.plugin;
import java.util.logging.Level;
import java.util.logging.LogRecord;
import java.util.logging.Logger;
/**
* The PluginLogger class is a modified {@link java.util.logging.Logger} that prepends all logging calls with the name of the
* plugin doing the logging.
*
* The API for PluginLogger is exactly the same as {@link java.util.logging.Logger}.
*/
public class PluginLogger extends Logger {
private String pluginName;
/**
* Creates a new PluginLogger that extracts the name from a plugin.
* @param context
*/
public PluginLogger(Plugin context) {
super(context.getClass().getCanonicalName(), null);
pluginName = "[" + context.getDescription().getName() + "] ";
setParent(context.getServer().getLogger());
setLevel(Level.ALL);
}
@Override
public void log(LogRecord logRecord) {
logRecord.setMessage(pluginName + logRecord.getMessage());
super.log(logRecord);
}
}