Interface RuntimeLogger
- All Superinterfaces:
LogDecorator, LogPriorityAccessor, MessageLogger<LogPriority>, NameAccessor
- All Known Implementing Classes:
DefaultRuntimeLogger, RuntimeLoggerSingleton
Plain simple interface for logging out runtime information generated by
software systems. The RuntimeLogger defines a plain simple interface
for logging out runtime information generated by software systems. The
DefaultRuntimeLogger implementation takes care of logging out the
class and the method generating a log line. The DefaultRuntimeLogger
actually takes a Logger instance; which implementation to take is up
to you:
- SystemLogger
- AsyncLogger
- ConsoleLogger (ConsoleLogger)
- IoLogger
- SimpleDbLoggerImpl
- SimpleDbLoggerImpl
- Slf4jLogger
(you find the various Logger implementations in the
refcodes-logger-alt artifact's modules)
Use the factory (the factory is implemented as a singleton)
RuntimeLoggerFactorySingleton retrieving RuntimeLogger
instances configured by a "runtimelogge.ini" file. This means
you can use YAML, TOML, INI, PROPERTIES, XML or JSON notations. A SLF4J
binding exists in the refcodes-logger-ext-slf4j" artifact which binds the
refcodes-logger framework to SLF4J enabling to log all your SLF4J logs out by
the refcodes-logger framework, e.g. to a SimpleDbLoggerImpl. The
RuntimeLogger may also be configured with one of the below mentioned
loggers.
-
Nested Class Summary
Nested classes/interfaces inherited from interface LogPriorityAccessor
LogPriorityAccessor.LogPriorityMutator, LogPriorityAccessor.LogPriorityPropertyNested classes/interfaces inherited from interface NameAccessor
NameAccessor.NameBuilder<B>, NameAccessor.NameMutator, NameAccessor.NameProperty -
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionvoidLogs a log aMessage with log priorityLogPriority.ALERT.voidLogs a log aMessage with log priorityLogPriority.ALERT.voidLogs a log aMessage with log priorityLogPriority.ALERT.voidLogs a log aMessage with log priorityLogPriority.ALERT.voidLogs a log aMessage with log priorityLogPriority.CRITICAL.voidLogs a log aMessage with log priorityLogPriority.CRITICAL.voidLogs a log aMessage with log priorityLogPriority.CRITICAL.voidLogs a log aMessage with log priorityLogPriority.CRITICAL.voidLogs a log aMessage with log priorityLogPriority.DEBUG.voidLogs a log aMessage with log priorityLogPriority.DEBUG.voidLogs a log aMessage with log priorityLogPriority.ERROR.voidLogs a log aMessage with log priorityLogPriority.ERROR.voidLogs a log aMessage with log priorityLogPriority.ERROR.voidLogs a log aMessage with log priorityLogPriority.ERROR.voidLogs a log aMessage with log priorityLogPriority.INFO.voidLogs a log aMessage with log priorityLogPriority.INFO.booleanisLog(LogPriority aPriority) Determines whether theRuntimeLoggeris being configured to log messages of the accordingLogPriority.booleanDetermines whether theRuntimeLoggeris being configured to log fatal messages (LogPriority.ALERT).booleanDetermines whether theRuntimeLoggeris being configured to log fatal messages (LogPriority.CRITICAL).booleanDetermines whether theRuntimeLoggeris being configured to log debug messages (LogPriority.DEBUG).booleanDetermines whether theRuntimeLoggeris being configured to log errors (LogPriority.ERROR).booleanDetermines whether theRuntimeLoggeris being configured to log infos (LogPriority.INFO).booleanDetermines whether theRuntimeLoggeris being configured to log notices (LogPriority.NOTICE).booleanDetermines whether theRuntimeLoggeris being configured to log fatal messages (LogPriority.PANIC).booleanDetermines whether theRuntimeLoggeris being configured to log comments (LogPriority.TRACE).booleanDetermines whether theRuntimeLoggeris being configured to log warnings (LogPriority.WARN).default voidLogs aLogRecordfrom the JUL logging framework.voidlog(LogPriority aPriority, String aMessage, Throwable aThrowable) Creates a new log aMessage.voidlog(LogPriority aPriority, String aMessage, Throwable aThrowable, Object... aArguments) Creates a new log aMessage.voidLogs a log aMessage with log priorityLogPriority.NOTICE.voidLogs a log aMessage with log priorityLogPriority.NOTICE.voidLogs a log aMessage with log priorityLogPriority.PANIC.voidLogs a log aMessage with log priorityLogPriority.PANIC.voidLogs a log aMessage with log priorityLogPriority.PANIC.voidLogs a log aMessage with log priorityLogPriority.PANIC.voidLogs a log aMessage with log priorityLogPriority.TRACE.voidLogs a log aMessage with log priorityLogPriority.TRACE.voidLogs a log aMessage with log priorityLogPriority.WARN.voidLogs a log aMessage with log priorityLogPriority.WARN.voidLogs a log aMessage with log priorityLogPriority.WARN.voidLogs a log aMessage with log priorityLogPriority.WARN.Methods inherited from interface LogDecorator
printHead, printSeparator, printTailMethods inherited from interface LogPriorityAccessor
getLogPriorityMethods inherited from interface MessageLogger
log, logMethods inherited from interface NameAccessor
getName
-
Field Details
-
RUNTIME_LOGGER_CONFIG
The filename of the file on the classpath containing the config for the runtime logger.- See Also:
-
ROOT_LOGGER_ELEMENT_PATH
The root logger is identified by this XML element path.- See Also:
-
-
Method Details
-
log
Creates a new log aMessage.- Parameters:
aPriority- The level of the aMessage.aMessage- The aMessage to be logged.aThrowable- An exception that the aMessage should contain.
-
log
Creates a new log aMessage. The placeholders in the aMessageStringare being replaced by the provided arguments. Implementations of this interface are recommended to use Java'sMessageFormat's syntax, the placeholder being replaced by the first argument is identified by "{0}" (without the quotes), the second one by "{1}", the third one by "{3}" and so on: Given the aMessage to be "{0} + {1} = {2}" and the three argument be x, y and x + y, then "{0}" is replaced by the value of x, "{1}" is replaced by the value of y and "{2}" is replaced by the value of x + y.- Parameters:
aPriority- The level of the aMessage.aMessage- The aMessage to be logged.aThrowable- An exception that the aMessage should contain.aArguments- The arguments used when replacing the placeholders.
-
isLog
Determines whether theRuntimeLoggeris being configured to log messages of the accordingLogPriority. This method is useful to prevent the generation of vast amounts of log aMessageStringobjects (and according processing) for the accordingLogPriorityin case them messages of thatLogPriorityare not logged at all.- Parameters:
aPriority- TheLogPriorityto test whether theRuntimeLoggerdoes log messages of thatLogPriority.- Returns:
- True in case the
RuntimeLoggerdoes log messages of thatLogPriority.
-
trace
Logs a log aMessage with log priorityLogPriority.TRACE.- Parameters:
aMessage- The aMessage to be logged.
-
trace
Logs a log aMessage with log priorityLogPriority.TRACE. The placeholders in the aMessageStringare being replaced by the provided arguments. Implementations of this interface are recommended to use Java'sMessageFormat's syntax, the placeholder being replaced by the first argument is identified by "{0}" (without the quotes), the second one by "{1}", the third one by "{3}" and so on: Given the aMessage to be "{0} + {1} = {2}" and the three argument be x, y and x + y, then "{0}" is replaced by the value of x, "{1}" is replaced by the value of y and "{2}" is replaced by the value of x + y.- Parameters:
aMessage- The aMessage to be logged.aArguments- The arguments used when replacing the placeholders.
-
isLogTrace
boolean isLogTrace()Determines whether theRuntimeLoggeris being configured to log comments (LogPriority.TRACE). This method is useful to prevent the generation of vast amounts of log aMessageStringobjects (and according processing) for the accordingLogPriorityin case them messages of thatLogPriorityare not logged at all.- Returns:
- True in case comments are logged.
-
debug
Logs a log aMessage with log priorityLogPriority.DEBUG. "Info useful to developers for debugging the application, not useful during operations." See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.
-
debug
Logs a log aMessage with log priorityLogPriority.DEBUG. "Info useful to developers for debugging the application, not useful during operations." The placeholders in the aMessageStringare being replaced by the provided arguments. Implementations of this interface are recommended to use Java'sMessageFormat's syntax, the placeholder being replaced by the first argument is identified by "{0}" (without the quotes), the second one by "{1}", the third one by "{3}" and so on: Given the aMessage to be "{0} + {1} = {2}" and the three argument be x, y and x + y, then "{0}" is replaced by the value of x, "{1}" is replaced by the value of y and "{2}" is replaced by the value of x + y. See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aArguments- The arguments used when replacing the placeholders.
-
isLogDebug
boolean isLogDebug()Determines whether theRuntimeLoggeris being configured to log debug messages (LogPriority.DEBUG). This method is useful to prevent the generation of vast amounts of log aMessageStringobjects (and according processing) for the accordingLogPriorityin case them messages of thatLogPriorityare not logged at all.- Returns:
- True in case debug messages are logged.
-
info
Logs a log aMessage with log priorityLogPriority.INFO. "Additional information which might be useful for some stability period." See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.
-
info
Logs a log aMessage with log priorityLogPriority.INFO. "Additional information which might be useful for some stability period." The placeholders in the aMessageStringare being replaced by the provided arguments. Implementations of this interface are recommended to use Java'sMessageFormat's syntax, the placeholder being replaced by the first argument is identified by "{0}" (without the quotes), the second one by "{1}", the third one by "{3}" and so on: Given the aMessage to be "{0} + {1} = {2}" and the three argument be x, y and x + y, then "{0}" is replaced by the value of x, "{1}" is replaced by the value of y and "{2}" is replaced by the value of x + y. See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aArguments- The arguments used when replacing the placeholders.
-
isLogInfo
boolean isLogInfo()Determines whether theRuntimeLoggeris being configured to log infos (LogPriority.INFO). This method is useful to prevent the generation of vast amounts of log aMessageStringobjects (and according processing) for the accordingLogPriorityin case them messages of thatLogPriorityare not logged at all.- Returns:
- True in case infos are logged.
-
notice
Logs a log aMessage with log priorityLogPriority.NOTICE. "Events that are unusual but not error conditions - might be summarized in an email to developers or admins to spot potential problems - no immediate action required." See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.
-
notice
Logs a log aMessage with log priorityLogPriority.NOTICE. "Events that are unusual but not error conditions - might be summarized in an email to developers or admins to spot potential problems - no immediate action required." The placeholders in the aMessageStringare being replaced by the provided arguments. Implementations of this interface are recommended to use Java'sMessageFormat's syntax, the placeholder being replaced by the first argument is identified by "{0}" (without the quotes), the second one by "{1}", the third one by "{3}" and so on: Given the aMessage to be "{0} + {1} = {2}" and the three argument be x, y and x + y, then "{0}" is replaced by the value of x, "{1}" is replaced by the value of y and "{2}" is replaced by the value of x + y. See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aArguments- The arguments used when replacing the placeholders.
-
isLogNotice
boolean isLogNotice()Determines whether theRuntimeLoggeris being configured to log notices (LogPriority.NOTICE). This method is useful to prevent the generation of vast amounts of log aMessageStringobjects (and according processing) for the accordingLogPriorityin case them messages of thatLogPriorityare not logged at all.- Returns:
- True in case infos are logged.
-
warn
Logs a log aMessage with log priorityLogPriority.WARN. "Warning messages, not an error, but indication that an error will occur if action is not taken, e.g. file system 85% full - each item must be resolved within a given time." See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.
-
warn
Logs a log aMessage with log priorityLogPriority.WARN. "Warning messages, not an error, but indication that an error will occur if action is not taken, e.g. file system 85% full - each item must be resolved within a given time." The placeholders in the aMessageStringare being replaced by the provided arguments. Implementations of this interface are recommended to use Java'sMessageFormat's syntax, the placeholder being replaced by the first argument is identified by "{0}" (without the quotes), the second one by "{1}", the third one by "{3}" and so on: Given the aMessage to be "{0} + {1} = {2}" and the three argument be x, y and x + y, then "{0}" is replaced by the value of x, "{1}" is replaced by the value of y and "{2}" is replaced by the value of x + y. See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aArguments- The arguments used when replacing the placeholders.
-
warn
Logs a log aMessage with log priorityLogPriority.WARN. "Warning messages, not an error, but indication that an error will occur if action is not taken, e.g. file system 85% full - each item must be resolved within a given time." See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aThrowable- An exception that the aMessage should contain.
-
warn
Logs a log aMessage with log priorityLogPriority.WARN. "Warning messages, not an error, but indication that an error will occur if action is not taken, e.g. file system 85% full - each item must be resolved within a given time." The placeholders in the aMessageStringare being replaced by the provided arguments. Implementations of this interface are recommended to use Java'sMessageFormat's syntax, the placeholder being replaced by the first argument is identified by "{0}" (without the quotes), the second one by "{1}", the third one by "{3}" and so on: Given the aMessage to be "{0} + {1} = {2}" and the three argument be x, y and x + y, then "{0}" is replaced by the value of x, "{1}" is replaced by the value of y and "{2}" is replaced by the value of x + y. See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aThrowable- An exception that the aMessage should contain.aArguments- The arguments used when replacing the placeholders.
-
isLogWarn
boolean isLogWarn()Determines whether theRuntimeLoggeris being configured to log warnings (LogPriority.WARN). This method is useful to prevent the generation of vast amounts of log aMessageStringobjects (and according processing) for the accordingLogPriorityin case them messages of thatLogPriorityare not logged at all.- Returns:
- True in case warnings are logged.
-
error
Logs a log aMessage with log priorityLogPriority.ERROR. "Non-urgent failures, these should be relayed to developers or admins; each item must be resolved within a given time." See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.
-
error
Logs a log aMessage with log priorityLogPriority.ERROR. "Non-urgent failures, these should be relayed to developers or admins; each item must be resolved within a given time." The placeholders in the aMessageStringare being replaced by the provided arguments. Implementations of this interface are recommended to use Java'sMessageFormat's syntax, the placeholder being replaced by the first argument is identified by "{0}" (without the quotes), the second one by "{1}", the third one by "{3}" and so on: Given the aMessage to be "{0} + {1} = {2}" and the three argument be x, y and x + y, then "{0}" is replaced by the value of x, "{1}" is replaced by the value of y and "{2}" is replaced by the value of x + y. See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aArguments- The arguments used when replacing the placeholders.
-
error
Logs a log aMessage with log priorityLogPriority.ERROR. "Non-urgent failures, these should be relayed to developers or admins; each item must be resolved within a given time." See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aThrowable- An exception that the aMessage should contain.
-
error
Logs a log aMessage with log priorityLogPriority.ERROR. "Non-urgent failures, these should be relayed to developers or admins; each item must be resolved within a given time." The placeholders in the aMessageStringare being replaced by the provided arguments. Implementations of this interface are recommended to use Java'sMessageFormat's syntax, the placeholder being replaced by the first argument is identified by "{0}" (without the quotes), the second one by "{1}", the third one by "{3}" and so on: Given the aMessage to be "{0} + {1} = {2}" and the three argument be x, y and x + y, then "{0}" is replaced by the value of x, "{1}" is replaced by the value of y and "{2}" is replaced by the value of x + y. See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aThrowable- An exception that the aMessage should contain.aArguments- The arguments used when replacing the placeholders.
-
isLogError
boolean isLogError()Determines whether theRuntimeLoggeris being configured to log errors (LogPriority.ERROR). This method is useful to prevent the generation of vast amounts of log aMessageStringobjects (and according processing) for the accordingLogPriorityin case them messages of thatLogPriorityare not logged at all.- Returns:
- True in case errors are logged.
-
critical
Logs a log aMessage with log priorityLogPriority.CRITICAL. "Should be corrected immediately, but indicates failure in a secondary system, an example is a loss of a backup ISP connection." See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.
-
critical
Logs a log aMessage with log priorityLogPriority.CRITICAL. "Should be corrected immediately, but indicates failure in a secondary system, an example is a loss of a backup ISP connection." The placeholders in the aMessageStringare being replaced by the provided arguments. Implementations of this interface are recommended to use Java'sMessageFormat's syntax, the placeholder being replaced by the first argument is identified by "{0}" (without the quotes), the second one by "{1}", the third one by "{3}" and so on: Given the aMessage to be "{0} + {1} = {2}" and the three argument be x, y and x + y, then "{0}" is replaced by the value of x, "{1}" is replaced by the value of y and "{2}" is replaced by the value of x + y. See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aArguments- The arguments used when replacing the placeholders.
-
critical
Logs a log aMessage with log priorityLogPriority.CRITICAL. "Should be corrected immediately, but indicates failure in a secondary system, an example is a loss of a backup ISP connection." See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aThrowable- An exception that the aMessage should contain.
-
critical
Logs a log aMessage with log priorityLogPriority.CRITICAL. "Should be corrected immediately, but indicates failure in a secondary system, an example is a loss of a backup ISP connection." See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aThrowable- An exception that the aMessage should contain.aArguments- The arguments used when replacing the placeholders.
-
isLogCritical
boolean isLogCritical()Determines whether theRuntimeLoggeris being configured to log fatal messages (LogPriority.CRITICAL). This method is useful to prevent the generation of vast amounts of log aMessageStringobjects (and according processing) for the accordingLogPriorityin case them messages of thatLogPriorityare not logged at all.- Returns:
- True in case fatal messages are logged.
-
alert
Logs a log aMessage with log priorityLogPriority.ALERT. "Should be corrected immediately, therefore notify staff who can fix the problem. An example would be the loss of a primary ISP connection." See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.
-
alert
Logs a log aMessage with log priorityLogPriority.ALERT. "Should be corrected immediately, therefore notify staff who can fix the problem. An example would be the loss of a primary ISP connection." The placeholders in the aMessageStringare being replaced by the provided arguments. Implementations of this interface are recommended to use Java'sMessageFormat's syntax, the placeholder being replaced by the first argument is identified by "{0}" (without the quotes), the second one by "{1}", the third one by "{3}" and so on: Given the aMessage to be "{0} + {1} = {2}" and the three argument be x, y and x + y, then "{0}" is replaced by the value of x, "{1}" is replaced by the value of y and "{2}" is replaced by the value of x + y. See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aArguments- The arguments used when replacing the placeholders.
-
alert
Logs a log aMessage with log priorityLogPriority.ALERT.- Parameters:
aMessage- The aMessage to be logged.aThrowable- An exception that the aMessage should contain.
-
alert
Logs a log aMessage with log priorityLogPriority.ALERT.- Parameters:
aMessage- The aMessage to be logged.aThrowable- An exception that the aMessage should contain.aArguments- The arguments used when replacing the placeholders.
-
isLogAlert
boolean isLogAlert()Determines whether theRuntimeLoggeris being configured to log fatal messages (LogPriority.ALERT). This method is useful to prevent the generation of vast amounts of log aMessageStringobjects (and according processing) for the accordingLogPriorityin case them messages of thatLogPriorityare not logged at all.- Returns:
- True in case fatal messages are logged.
-
panic
Logs a log aMessage with log priorityLogPriority.PANIC. "A "panic" condition usually affecting multiple apps/servers/sites. At this level it would usually notify all tech staff on call." ( See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.
-
panic
Logs a log aMessage with log priorityLogPriority.PANIC. "A "panic" condition usually affecting multiple apps/servers/sites. At this level it would usually notify all tech staff on call." The placeholders in the aMessageStringare being replaced by the provided arguments. Implementations of this interface are recommended to use Java'sMessageFormat's syntax, the placeholder being replaced by the first argument is identified by "{0}" (without the quotes), the second one by "{1}", the third one by "{3}" and so on: Given the aMessage to be "{0} + {1} = {2}" and the three argument be x, y and x + y, then "{0}" is replaced by the value of x, "{1}" is replaced by the value of y and "{2}" is replaced by the value of x + y. See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aArguments- The arguments used when replacing the placeholders.
-
panic
Logs a log aMessage with log priorityLogPriority.PANIC. "A "panic" condition usually affecting multiple apps/servers/sites. At this level it would usually notify all tech staff on call." ( See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aThrowable- An exception that the aMessage should contain.
-
panic
Logs a log aMessage with log priorityLogPriority.PANIC. "A "panic" condition usually affecting multiple apps/servers/sites. At this level it would usually notify all tech staff on call." The placeholders in the aMessageStringare being replaced by the provided arguments. Implementations of this interface are recommended to use Java'sMessageFormat's syntax, the placeholder being replaced by the first argument is identified by "{0}" (without the quotes), the second one by "{1}", the third one by "{3}" and so on: Given the aMessage to be "{0} + {1} = {2}" and the three argument be x, y and x + y, then "{0}" is replaced by the value of x, "{1}" is replaced by the value of y and "{2}" is replaced by the value of x + y. See also http://en.wikipedia.org/wiki/Syslog- Parameters:
aMessage- The aMessage to be logged.aThrowable- An exception that the aMessage should contain.aArguments- The arguments used when replacing the placeholders.
-
isLogPanic
boolean isLogPanic()Determines whether theRuntimeLoggeris being configured to log fatal messages (LogPriority.PANIC). This method is useful to prevent the generation of vast amounts of log aMessageStringobjects (and according processing) for the accordingLogPriorityin case them messages of thatLogPriorityare not logged at all.- Returns:
- True in case fatal messages are logged.
-
log
-