|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object cz.cuni.amis.pogamut.base.utils.logging.AbstractAgentLogger
public abstract class AbstractAgentLogger
All logging apis are fine ... but we don't want to have loggers for classes but for instances - therefore we've created our wrapper allowing you to do two things quickly:
2) this may prove crucial for your debugging to have own logger for planner and another for emotions of your agents, etc.
Simply - every Agent instance (starting with the first abstract class AbstractAgent) has instance of this class (which is java.logging.Logger(s) wrapper).
Every agent's component has own LogCategory
and you may obtain your own via getCategory() method.
LogCategory
serves as a gateway for your log messages, it contains methods as you
know them from java.logging API (things like fine(), info(), severe(), log(Level, msg), etc.).
Plus it allows you to obtain new LogHandler
instances for that category (if you need to
publish log messages from that category somewhere else).
Every LogHandler
serves for filtering messages for one category and publishing them
into one end (console, file, memory, whatever...).
Additionally every LogCategory
has AgentLogger
as its parent.
Field Summary | |
---|---|
protected IAgentId |
agentId
|
static java.lang.String |
LOG_CATEGORY_NAME
|
Constructor Summary | |
---|---|
AbstractAgentLogger(IAgentId agentName)
|
Method Summary | |
---|---|
void |
addDefaultConsoleHandler()
Adds console handler to every existing LogCategory plus to every new one. |
java.util.logging.Handler |
addDefaultFileHandler(java.io.File file)
Adds console handler to every existing LogCategory plus to every new one. |
void |
addDefaultHandler(java.util.logging.Handler handler)
Adds handler to every existing LogCategory plus to every new one. |
void |
addDefaultNetworkHandler()
Adds network handler to every existing LogCategory plus to every new one. |
java.util.logging.Handler |
addDefaultPublisher(ILogPublisher publisher)
Adds publisher to every existing LogCategory plus to every new one. |
void |
addToAllCategories(java.util.logging.Handler handler)
Adds new handler to all categories. |
void |
addToAllCategories(ILogPublisher logPublisher)
Adds new publisher to all categories. |
IAgentId |
getAgentId()
Returns agent name. |
java.util.Map<java.lang.String,LogCategory> |
getCategories()
Return immutable map of all log categories. |
LogCategory |
getCategory(IComponent component)
Returns LogCategory for specified IComponent . |
LogCategory |
getCategory(java.lang.String name)
Returns LogCategory for specified name. |
java.util.logging.Handler |
getDefaultConsoleHandler()
Returns Handler that provides console publishing of all logs. |
java.util.logging.Handler |
getDefaultNetworkHandler()
Returns Handler that provides publishing of all logs through NetworkLogPublisher . |
protected abstract ILogCategories |
getLogCategories()
|
java.lang.String |
getNetworkLoggerHost()
Returns a host where NetworkLogManager is listening. |
java.lang.Integer |
getNetworkLoggerPort()
Returns port where NetworkLogManager is listening. |
boolean |
isDefaultConsoleHandler()
Tells whether the logger has default console handler attached. |
boolean |
isDefaultNetworkHandler()
Tells whether the logger has default network handler attached. |
void |
removeDefaultConsoleHandler()
Removes default console handler from every existing LogCategory . |
void |
removeDefaultHandler(java.util.logging.Handler handler)
Removes default handler from all existing LogCategory . |
void |
removeDefaultNetworkHandler()
Removes default network handler from every existing LogCategory . |
void |
removeFromAllCategories(java.util.logging.Handler handler)
Removes a handler from all categories. |
void |
setLevel(java.util.logging.Level newLevel)
Set level for all handlers of all categories. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface cz.cuni.amis.pogamut.base.agent.jmx.IJMXEnabled |
---|
enableJMX |
Field Detail |
---|
public static final java.lang.String LOG_CATEGORY_NAME
protected IAgentId agentId
Constructor Detail |
---|
@Inject public AbstractAgentLogger(IAgentId agentName)
Method Detail |
---|
public IAgentId getAgentId()
IAgentLogger
getAgentId
in interface IAgentLogger
public java.lang.Integer getNetworkLoggerPort()
IAgentLogger
NetworkLogManager
is listening.
Returns null if network logging is not enabled.
getNetworkLoggerPort
in interface IAgentLogger
getNetworkLoggerPort
in interface IJMXAgentLogger
public java.lang.String getNetworkLoggerHost()
IAgentLogger
NetworkLogManager
is listening.
Returns null if network logging is not enabled.
getNetworkLoggerHost
in interface IAgentLogger
getNetworkLoggerHost
in interface IJMXAgentLogger
public java.util.Map<java.lang.String,LogCategory> getCategories()
IAgentLogger
Does not contain agent logger itself.
getCategories
in interface IAgentLogger
protected abstract ILogCategories getLogCategories()
public LogCategory getCategory(java.lang.String name)
IAgentLogger
getCategory
in interface IAgentLogger
public LogCategory getCategory(IComponent component)
IAgentLogger
IComponent
.
getCategory
in interface IAgentLogger
public void setLevel(java.util.logging.Level newLevel)
IAgentLogger
setLevel
in interface IAgentLogger
public void addDefaultConsoleHandler()
IAgentLogger
LogCategory
plus to every new one.
Shortcut for quick usage.
addDefaultConsoleHandler
in interface IAgentLogger
public java.util.logging.Handler getDefaultConsoleHandler()
IAgentLogger
Handler
that provides console publishing of all logs.
May return null in case that console logging is not enabled on the logger, i.e., you have to call
IAgentLogger.addDefaultConsoleHandler()
.
getDefaultConsoleHandler
in interface IAgentLogger
public void removeDefaultConsoleHandler()
IAgentLogger
LogCategory
.
removeDefaultConsoleHandler
in interface IAgentLogger
public boolean isDefaultConsoleHandler()
IAgentLogger
isDefaultConsoleHandler
in interface IAgentLogger
public void addDefaultNetworkHandler()
IAgentLogger
LogCategory
plus to every new one.
Enables utilization of NetworkLogManager
for publishing all logs of this logger.
addDefaultNetworkHandler
in interface IAgentLogger
addDefaultNetworkHandler
in interface IJMXAgentLogger
public java.util.logging.Handler getDefaultNetworkHandler()
IAgentLogger
Handler
that provides publishing of all logs through NetworkLogPublisher
.
May return null in case that network logging is not enabled on the logger, i.e., you have to call
IAgentLogger.addDefaultNetworkHandler()
.
getDefaultNetworkHandler
in interface IAgentLogger
public void removeDefaultNetworkHandler()
IAgentLogger
LogCategory
.
Note that this method is automatically called whenever the AbstractAgent is stopped/killed.
removeDefaultNetworkHandler
in interface IAgentLogger
removeDefaultNetworkHandler
in interface IJMXAgentLogger
public boolean isDefaultNetworkHandler()
IAgentLogger
It allows you to query whether the agent logger is outputting its logs to the NetworkLogManager
or not.
isDefaultNetworkHandler
in interface IAgentLogger
isDefaultNetworkHandler
in interface IJMXAgentLogger
public java.util.logging.Handler addDefaultFileHandler(java.io.File file)
IAgentLogger
LogCategory
plus to every new one.
Shortcut for quick usage.
addDefaultFileHandler
in interface IAgentLogger
public java.util.logging.Handler addDefaultPublisher(ILogPublisher publisher)
IAgentLogger
LogCategory
plus to every new one.
addDefaultPublisher
in interface IAgentLogger
public void addDefaultHandler(java.util.logging.Handler handler)
IAgentLogger
LogCategory
plus to every new one.
addDefaultHandler
in interface IAgentLogger
public void removeDefaultHandler(java.util.logging.Handler handler)
IAgentLogger
LogCategory
.
removeDefaultHandler
in interface IAgentLogger
public void addToAllCategories(ILogPublisher logPublisher)
IAgentLogger
addToAllCategories
in interface IAgentLogger
public void addToAllCategories(java.util.logging.Handler handler)
IAgentLogger
addToAllCategories
in interface IAgentLogger
public void removeFromAllCategories(java.util.logging.Handler handler)
IAgentLogger
removeFromAllCategories
in interface IAgentLogger
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |