2020-03-27 08:58:22 +00:00
|
|
|
Logging Handler
|
|
|
|
===============
|
2020-03-27 08:53:58 +00:00
|
|
|
|
|
|
|
Rich supplies a :ref:`logging handler<logging>` which will format and colorize text written by Python's logging module.
|
|
|
|
|
|
|
|
Here's an example of how to set up a rich logger::
|
|
|
|
|
|
|
|
import logging
|
|
|
|
from rich.logging import RichHandler
|
|
|
|
|
|
|
|
FORMAT = "%(message)s"
|
|
|
|
logging.basicConfig(
|
2020-05-19 12:38:13 +00:00
|
|
|
level="NOTSET", format=FORMAT, datefmt="[%X]", handlers=[RichHandler()]
|
2020-03-27 08:53:58 +00:00
|
|
|
)
|
2020-03-27 08:58:22 +00:00
|
|
|
|
2020-03-27 08:53:58 +00:00
|
|
|
log = logging.getLogger("rich")
|
2020-06-30 20:40:11 +00:00
|
|
|
log.info("Hello, World!")
|
|
|
|
|
|
|
|
Rich logs won't process console markup by default, but you can enable markup per log statement with the ``extras`` argument as follows::
|
|
|
|
|
|
|
|
log.error("[bold red blink]Server is shutting down![/]", extras={"markup": True})
|
|
|
|
|
|
|
|
There are a number of options you can use to configure logging output, see the :class:`~rich.logging.RichHandler` reference for details.
|