pi_weather.utils.logs module

Util functions to declare/define a robust logger + respective handlers/formatter

class pi_weather.utils.logs.MicrosecondFormatter(fmt=None, datefmt=None, style='%', validate=True, *, defaults=None)[source]

Bases: Formatter

Logging formatter enabling microsecond formatting (overloading of built-in logging.Formatter)

formatTime(record, datefmt=None)[source]

Function to format time (overloading of logging.Formatter.formatTime(…))

Parameters:
  • record (LogRecord) – Log record

  • datefmt (str | None) – Date format (if specified)

Returns:

Formatted time for a given log record instance

Return type:

str

pi_weather.utils.logs.get_formatter()[source]

Function to build a valid logging formatter

Returns:

Formatter object

Return type:

Formatter

pi_weather.utils.logs.get_stream_handler()[source]

Function to build a valid logging stream handler (stdout/stderr)

Returns:

Stream handler

Return type:

Handler

pi_weather.utils.logs._get_file_handler_pathname()[source]

Function to get valid pathname for a given file handler

Returns:

Valid pathname

Return type:

str

pi_weather.utils.logs.get_file_handler()[source]

Function to build a valid file handler

Returns:

File handler

Return type:

Handler

pi_weather.utils.logs.get_time_rotating_file_handler()[source]

Function to build a valid timed rotating file handler

Returns:

Timed rotating file handler

Return type:

Handler

pi_weather.utils.logs.setup_logger()[source]

Function to set up a valid root (pi_weather) logger This function must only be called on project’s entry points It also disables external packages logging

Returns:

Nothing

Return type:

None

pi_weather.utils.logs.get_logger(name)[source]

Function to get a valid logger instance

Parameters:

name (str) – Logger name

Returns:

Valid logger instance

Return type:

Logger

pi_weather.utils.logs.configure_external_logging(log_level=30)[source]

Function to configure external logging

Returns:

Nothing

Return type:

None

Parameters:

log_level (int)