2 Commits

3 changed files with 32 additions and 26 deletions

View File

@@ -10,6 +10,9 @@
% It follows the Singleton pattern to ensure that only one instance of the logger % It follows the Singleton pattern to ensure that only one instance of the logger
% exists throughout the application. % exists throughout the application.
% %
% The log file is specified by the environment variable 'APP_LOG_FILE'. If
% the variable is not set, a default file 'base-logger-log.log' is used.
%
% Properties: % Properties:
% fid - (private) The file identifier for the log file. This is used to write logs. % fid - (private) The file identifier for the log file. This is used to write logs.
% %
@@ -17,20 +20,20 @@
% %
% getInstance() - Retrieves the singleton instance of the logger. % getInstance() - Retrieves the singleton instance of the logger.
% %
% trace(message) - Logs a message with TRACE level. % trace(varargin) - Logs one or more messages with TRACE level.
% @param message The message to log. % @param varargin The messages to log. Can be strings, numbers, or MException objects.
% %
% debug(message) - Logs a message with DEBUG level. % debug(varargin) - Logs one or more messages with DEBUG level.
% @param message The message to log. % @param varargin The messages to log. Can be strings, numbers, or MException objects.
% %
% info(message) - Logs a message with INFO level. % info(varargin) - Logs one or more messages with INFO level.
% @param message The message to log. % @param varargin The messages to log. Can be strings, numbers, or MException objects.
% %
% warning(message) - Logs a message with WARNING level. % warning(varargin) - Logs one or more messages with WARNING level.
% @param message The message to log. % @param varargin The messages to log. Can be strings, numbers, or MException objects.
% %
% error(message) - Logs a message with ERROR level. % error(varargin) - Logs one or more messages with ERROR level.
% @param message The message to log. % @param varargin The messages to log. Can be strings, numbers, or MException objects.
% %
% delete() - Destructor method that closes the file identifier when the logger is deleted. % delete() - Destructor method that closes the file identifier when the logger is deleted.
% %
@@ -65,7 +68,7 @@ classdef base_logger < handle
function this = base_logger() function this = base_logger()
logFileName = getenv("APP_LOG_FILE"); logFileName = getenv("APP_LOG_FILE");
if isempty(logFileName) if isempty(logFileName)
logFileName = 'fallbackPathApplication.log'; logFileName = 'base-logger-log.log';
end end
this.fid = fopen(logFileName, 'a'); this.fid = fopen(logFileName, 'a');
if this.fid == -1 if this.fid == -1

View File

@@ -10,6 +10,9 @@
% It follows the Singleton pattern to ensure that only one instance of the logger % It follows the Singleton pattern to ensure that only one instance of the logger
% exists throughout the application. % exists throughout the application.
% %
% The log file is specified by the environment variable 'APP_LOG_FILE'. If
% the variable is not set, a default file 'base-logger-log.log' is used.
%
% Properties: % Properties:
% fid - (private) The file identifier for the log file. This is used to write logs. % fid - (private) The file identifier for the log file. This is used to write logs.
% %
@@ -17,20 +20,20 @@
% %
% getInstance() - Retrieves the singleton instance of the logger. % getInstance() - Retrieves the singleton instance of the logger.
% %
% trace(message) - Logs a message with TRACE level. % trace(varargin) - Logs one or more messages with TRACE level.
% @param message The message to log. % @param varargin The messages to log. Can be strings, numbers, or MException objects.
% %
% debug(message) - Logs a message with DEBUG level. % debug(varargin) - Logs one or more messages with DEBUG level.
% @param message The message to log. % @param varargin The messages to log. Can be strings, numbers, or MException objects.
% %
% info(message) - Logs a message with INFO level. % info(varargin) - Logs one or more messages with INFO level.
% @param message The message to log. % @param varargin The messages to log. Can be strings, numbers, or MException objects.
% %
% warning(message) - Logs a message with WARNING level. % warning(varargin) - Logs one or more messages with WARNING level.
% @param message The message to log. % @param varargin The messages to log. Can be strings, numbers, or MException objects.
% %
% error(message) - Logs a message with ERROR level. % error(varargin) - Logs one or more messages with ERROR level.
% @param message The message to log. % @param varargin The messages to log. Can be strings, numbers, or MException objects.
% %
% delete() - Destructor method that closes the file identifier when the logger is deleted. % delete() - Destructor method that closes the file identifier when the logger is deleted.
% %
@@ -65,7 +68,7 @@ classdef base_logger < handle
function this = base_logger() function this = base_logger()
logFileName = getenv("APP_LOG_FILE"); logFileName = getenv("APP_LOG_FILE");
if isempty(logFileName) if isempty(logFileName)
logFileName = 'fallbackPathApplication.log'; logFileName = 'base-logger-log.log';
end end
this.fid = fopen(logFileName, 'a'); this.fid = fopen(logFileName, 'a');
if this.fid == -1 if this.fid == -1

View File

@@ -12,7 +12,7 @@ def getDefaultLogger(name):
The logger is configured to write log messages to the file path specified by the The logger is configured to write log messages to the file path specified by the
'APP_LOG_FILE' environment variable. If the environment variable is not set, 'APP_LOG_FILE' environment variable. If the environment variable is not set,
the logger will write to the file 'fallbackPathApplication.log' in the current the logger will write to the file 'base-logger-log.log' in the current
working directory. The logger uses the 'INFO' level as the default logging level working directory. The logger uses the 'INFO' level as the default logging level
and writes log entries in the following format: and writes log entries in the following format:
@@ -33,7 +33,7 @@ def getDefaultLogger(name):
logger : logging.Logger logger : logging.Logger
A logger instance with the specified name. The logger is configured with a A logger instance with the specified name. The logger is configured with a
file handler that writes to the file specified by the 'APP_LOG_FILE' file handler that writes to the file specified by the 'APP_LOG_FILE'
environment variable, or to 'fallbackPathApplication.log' if the environment environment variable, or to 'base-logger-log.log' if the environment
variable is not set. variable is not set.
Example: Example:
@@ -48,12 +48,12 @@ def getDefaultLogger(name):
Notes: Notes:
------ ------
- The 'APP_LOG_FILE' environment variable should specify the full path to the log file. - The 'APP_LOG_FILE' environment variable should specify the full path to the log file.
- If 'APP_LOG_FILE' is not set, logs will be written to 'fallbackPathApplication.log'. - If 'APP_LOG_FILE' is not set, logs will be written to 'base-logger-log.log'.
""" """
logger = logging.getLogger(name) logger = logging.getLogger(name)
if not logger.hasHandlers(): if not logger.hasHandlers():
file_handler = logging.FileHandler(os.environ.get('APP_LOG_FILE', 'fallbackPathApplication.log'), mode='a') file_handler = logging.FileHandler(os.environ.get('APP_LOG_FILE', 'base-logger-log.log'), mode='a')
formatter = logging.Formatter('%(asctime)s,%(msecs)d %(levelname)s %(name)s %(message)s') formatter = logging.Formatter('%(asctime)s,%(msecs)d %(levelname)s %(name)s %(message)s')
file_handler.setFormatter(formatter) file_handler.setFormatter(formatter)
logger.addHandler(file_handler) logger.addHandler(file_handler)