Python logging utilities
Project description
logdog
Python package with logging
utilities
Requirements
- Python >= 3.10
Installation
pip install -U python-logdog
Usage
[!NOTE] These are only basic examples. More advanced ones can be found in the
examples/
directory
Message wrapper
Basic
import logging
from logdog import LogMessageWrapper
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger("mylogger")
user_id = 1
some_value = "some string"
logger.info("user login", extra={"not": "included", "user": user_id, "value": some_value})
# output: INFO:mylogger:user login
log = LogMessageWrapper(logger)
log.info("user login", user=user_id, action="login", value=some_value)
# output: INFO:mylogger:user login user=1 action=login value="some string"
Custom format
logging.basicConfig(level=logging.INFO, format="%(asctime)s : %(levelname)-8s : %(message)s")
logger = logging.getLogger("mylogger")
log = LogMessageWrapper(logger, prefix=" : ")
log.info("user login", user=user_id, action="login", value=some_value)
# output: 2023-09-05 12:01:09,836 : INFO : user login : user=1 action=login value="some string"
Renderers
Currently there are 2 renderers:
LogfmtRenderer
(default one)JsonRenderer
Same simple example using different renderer:
from logdog.wrapper import JsonRenderer, LogMessageWrapper
logging.basicConfig(level=logging.INFO, format="%(asctime)s : %(levelname)-8s : %(message)s")
logger = logging.getLogger("mylogger")
log = LogMessageWrapper(
logger,
prefix=" [",
suffix="]",
renderer=JsonRenderer(),
)
log.info("user login", user=user_id, action="login", value=some_value)
# output: 2023-09-05 12:01:09,836 : INFO : user login [{"user": 1, "action": "login", "value": "some string"}]
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
python-logdog-0.1.0.tar.gz
(9.5 kB
view hashes)
Built Distribution
Close
Hashes for python_logdog-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 17d282d822bee1dfc112f000e98f5d246d516d13c2d011b91f4dd8e1d7c8fe53 |
|
MD5 | 1fb66d2b40b183172c33b9b2b7956e2b |
|
BLAKE2b-256 | e55d183e3259bd75827285af6319a4dbf750a629ec5132e6e16a475824c21d1c |