rics.logs#
Utility methods for logging tasks.
Module Attributes
Default logging format; |
|
Default logging date format; |
Functions
|
Do basic logging configuration with package defaults. |
|
Temporarily disable logging. |
Classes
|
Special type indicating an unconstrained type. |
- FORMAT: str = '%(asctime)s.%(msecs)03d [%(name)s:%(levelname)s] %(message)s'#
Default logging format;
<date-format>.378 [rics:DEBUG] I'm a debug message!
- DATE_FORMAT: str = '%Y-%m-%dT%H:%M:%S'#
Default logging date format;
2022-02-05T11:17:05<logging-format>
- basic_config(*, format: str = '%(asctime)s.%(msecs)03d [%(name)s:%(levelname)s] %(message)s', datefmt: str = '%Y-%m-%dT%H:%M:%S', level: int | str = 20, force: bool = True, **kwargs: Any) None[source]#
Do basic logging configuration with package defaults.
Simple wrapper for the standard
logging.basicConfig()-method, using my personal preferences for defaults.- Parameters:
format – Format string for emitted messages; see
FORMAT.datefmt – Format string for date/time; see
DATE_FORMAT.level – Log level for the root logger. Default is
logging.INFO.force – If
True, override existing configuration if it exists.**kwargs – Keyword arguments for
logging.basicConfig().
- Keyword Arguments:
_level – Additional log levels to set, replacing double underscores with dots to produce the logger names. For example, passing
rics__performance_level=logging.INFOwill modify the ‘rics.performance’-logger.
Examples
Basic usage.
>>> from rics.logs import basic_config, logging >>> basic_config(level=logging.INFO, rics_level=logging.DEBUG) >>> logging.getLogger("rics").debug("I'm a debug message!") >>> logging.debug("I'm a debug message!") >>> logging.critical("I'm a critical message!") # Doctest: +SKIP 2022-02-05T11:17:05.378 [rics:DEBUG] I'm a debug message! 2022-02-05T11:17:05.378 [root:CRITICAL] I'm a critical message!
- disable_temporarily(logger: str | Logger | LoggerAdapter, *more_loggers: str | Logger | LoggerAdapter)[source]#
Temporarily disable logging.
- Parameters:
logger – A logger to disable.
*more_loggers – Additional loggers to disable.
- Yields:
Nothing.
Examples
Disable all logging temporarily.
>>> import logging >>> logging.basicConfig() >>> with disable_temporarily(logging.root): ... logging.info("This message is ignored.")