ISEPOS-2280 Added base loggers scripts #1

Open
ymlesni wants to merge 8 commits from ymlesni/shared-snippets:feature/ISEPOS-2280-mechanizm-raportowania-informacji-z-aplikacji-do-pliku-z-logami into main
3 changed files with 6 additions and 6 deletions
Showing only changes of commit 7ba8869df0 - Show all commits

View File

@ -65,7 +65,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';
asia marked this conversation as resolved Outdated
Outdated
Review

Can we use a different name? Something that we would consider a log file at first glance ('fallbackPath' is something I wouldn't) - if we don't want to make it too simple, to avoid name collision with other things, maybe e.g. base-app-log.log or base-logger-log.log or something like that

Can we use a different name? Something that we would consider a log file at first glance ('fallbackPath' is something I wouldn't) - if we don't want to make it too simple, to avoid name collision with other things, maybe e.g. base-app-log.log or base-logger-log.log or something like that
end end
this.fid = fopen(logFileName, 'a'); this.fid = fopen(logFileName, 'a');
if this.fid == -1 if this.fid == -1

View File

@ -65,7 +65,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,
Outdated
Review

I think the name was changed to 'APP_LOG_FILE'

I think the name was changed to 'APP_LOG_FILE'
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:
Review

Here, again, the name of the variable should be updated. But I thought also that instead of throwing an error, we might use some default file name, to allow users to run the app also outside of the platform. But, I would set the default log file name to something different than "application.log", so that we know that we could notice if something is wrong with setting the environment variable.

Here, again, the name of the variable should be updated. But I thought also that instead of throwing an error, we might use some default file name, to allow users to run the app also outside of the platform. But, I would set the default log file name to something different than "application.log", so that we know that we could notice if something is wrong with setting the environment variable.
@ -48,12 +48,12 @@ def getDefaultLogger(name):
Notes: Notes:
Outdated
Review

We have except Exception as e but the e is not used anywhere... is this correct?

We have `except Exception as e` but the `e` is not used anywhere... is this correct?

Maybe it is good to use here the logger.exception() (doc) method as a showcase.

Maybe it is good to use here the `logger.exception()` ([doc](https://docs.python.org/3/library/logging.html#logging.Logger.exception)) method as a showcase.

e could be used to process exception further, but it is not necessary for example, I will remove it.
Would adding logger.exception() as a additional option be a good idea (to still showcase how to log exception at chosen log level)? For now I will change to logger.exception().

`e` could be used to process exception further, but it is not necessary for example, I will remove it. Would adding `logger.exception()` as a additional option be a good idea (to still showcase how to log exception at chosen log level)? For now I will change to `logger.exception()`.
------ ------
- 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)