Package de.oliver.fancyanalytics.logger
Class FancyLogger
java.lang.Object
de.oliver.fancyanalytics.logger.FancyLogger
- Direct Known Subclasses:
ExtendedFancyLogger
The FancyLogger class provides an advanced logging mechanism with asynchronous
processing, customizable log levels, and support for multiple appenders and listeners.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected LogLevelprotected final List<Middleware>protected final String -
Constructor Summary
ConstructorsConstructorDescriptionFancyLogger(String name) Initializes a new instance of the FancyLogger class with default settings.FancyLogger(String name, LogLevel currentLevel, List<Appender> appenders, List<Middleware> middlewares) Initializes a new instance of the FancyLogger class. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddAppender(Appender appender) Adds a new appender to the FancyLogger.voidaddMiddlware(Middleware middleware) Adds new middleware to the FancyLogger.static FancyLoggergetName()Retrieves the name of the logger instance.voidLogs a message with a specified log level and log entry using the default appenders.voidLogs an entry based on the provided log level and a list of appenders.voidsetCurrentLevel(LogLevel currentLevel) Sets the current log level for the FancyLogger.
-
Field Details
-
name
-
defaultAppenders
-
middlewares
-
currentLevel
-
-
Constructor Details
-
FancyLogger
Initializes a new instance of the FancyLogger class with default settings.The default log level is set to INFO. A ConsoleAppender is added as the default appender to handle log messages, and an empty list is initialized for middlewares.
Use ExtendedFancyLogger for a more user-friendly API.
- Parameters:
name- The name of the logger instance.
-
FancyLogger
public FancyLogger(String name, LogLevel currentLevel, List<Appender> appenders, List<Middleware> middlewares) Initializes a new instance of the FancyLogger class.- Parameters:
name- The name of the logger instance.currentLevel- The current log level. Log messages below this level will be ignored.appenders- The list of appenders used to handle log messages.middlewares- The list of middlewares to process log entries before they are logged.
-
-
Method Details
-
getGlobalLogger
-
log
Logs a message with a specified log level and log entry using the default appenders.- Parameters:
logLevel- The severity level of the log entry.logEntry- The log entry containing the details to be logged.
-
log
Logs an entry based on the provided log level and a list of appenders.- Parameters:
logLevel- The severity level of the log entry.logEntry- The log entry to be logged.appender- The list of appenders to which the log entry will be sent.
-
getName
Retrieves the name of the logger instance.- Returns:
- The name of the logger.
-
addAppender
Adds a new appender to the FancyLogger.- Parameters:
appender- The appender to be added. An appender defines the way log entries are output, such as to the console or a file.
-
addMiddlware
Adds new middleware to the FancyLogger.Middleware allows for processing or modifying log entries before they are logged. This can be useful for adding additional context, filtering, or transforming log data.
-
setCurrentLevel
Sets the current log level for the FancyLogger.- Parameters:
currentLevel- The log level to set. Log messages with a level lower than this will be ignored.
-