2022-02-02 10:37:07 +01:00
# syslogformat
2022-02-02 12:03:45 +01:00
Python `logging.Formatter` class for syslog style messages
2022-02-02 10:37:07 +01:00
## Usage
2022-02-02 12:03:45 +01:00
Example with in-code setup:
```python
# example.py
import logging
from syslogformat import SyslogFormatter
log = logging.getLogger()
hdl = logging.StreamHandler()
fmt = SyslogFormatter()
hdl.setFormatter(fmt)
hdl.setLevel(logging.NOTSET)
log.addHandler(hdl)
log.setLevel(logging.NOTSET)
log.debug("foo")
log.info("bar")
log.warning("baz")
try:
raise ValueError("this is bad")
except ValueError as e:
log.exception("oh no")
```
This is what the output should be like:
```
< 7 > DEBUG | foo
< 6 > INFO | bar
< 4 > WARNING | baz | example.< module > .14
< 3 > ERROR | oh no | example.< module > .18 | 'Traceback (most recent call last):\n File "/path/to/example.py", line 16, in < module > \n raise ValueError("this is bad")\nValueError: this is bad'
```
Same configuration with YAML file to be loaded into `logging.config.dictConfig` :
```yaml
version: 1
formatters:
custom:
(): syslogformat.SyslogFormatter
handlers:
console:
class: logging.StreamHandler
level: NOTSET
formatter: custom
stream: ext://sys.stdout
root:
level: NOTSET
handlers: [console]
```
2022-02-02 10:37:07 +01:00
## Installation
`pip install syslogformat`
## Dependencies
2022-02-02 12:03:45 +01:00
Python Version 3
2022-02-02 10:37:07 +01:00
## Building from source
Run `python -m build`