Just another one Python logging package.
Project description
EPYLOG
Logs are the first.
This is a simple wrapper to standard logging library for Python.
Epylog provides to send log data to different sources e.g. file, rsyslog, graylog, http, etc.
Use different loggers for different needs and manage it from one place.
Installation
pip install epylog
Usage
-
Move to project root directory and create
logging.cfgfile:cd /project/root touch logging.cfg
-
Fill configuration file with you logging settings. Push to
targetsarray everything you want to send to. And fillrulesarray with logger names (use*wildcard if you want) and set which targets loggers can use:{ "targets": [ { "name": "fl", "type": "file", "filename": "/var/log/my_log.log" }, { "name": "gl", "type": "graylog", "host": "localhost", "port": 12202, "facility": "test" }, { "name": "rsl", "type": "syslog", "address": "localhost", "facility": "test" } ], "rules": [ { "name": "my_test_*", "min-level": "info", "write-to": "fl, gl", "format": "%(asctime)s - %(name)s - %(levelname)s - %(message)s" }, { "name": "*", "min-level": "warning", "write-to": "rsl", "format": "%(asctime)s - %(name)s - %(levelname)s - %(message)s" } ] }
-
Finally call
getLoggerfunction to initialize your logger:from epylog import Logger # put some code here logger = Logger.getLogger('my_test_logger') logger.info('Hello from %s', logger.name)
-
Enjoy sending your logs everywhere
Configuration reference
logging.cfg is a simple JSON object that descxribes all sources that you planning to use and associates loggers with this sources.
Targets
Tagrets are sources where can you send your logs.
...
{
"name": "fl",
"type": "file",
...
}
...
| Field | Description |
|---|---|
| name | Unique name of target |
| type | Target type. Now availible file, watch-file, syslog, http and graylog target types |
| other fields | Other fields associated with specific target e.g. filename, host, facility, etc. |
Rules
Rules are patterns for associating user loggers with specific configuration.
...
{
"name": "my_test_*",
"min-level": "info",
"write-to": "fl, gl",
"format": "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
}
...
| Field | Description |
|---|---|
| name | Unique name(s) of logger given by getLogger method. Use * wildcard for applying same settings for group of loggers |
| min-level | Minimum logging level |
| write-to | Target names splitted by comma without whitespases that will be asociated with this logger(s) |
| format | Log line format |
License
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file epylog-0.1.33.tar.gz.
File metadata
- Download URL: epylog-0.1.33.tar.gz
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fdba779ac3aa1923f5f8415ca91f735dc69e2bf60f283eba90f4fb90d77e9a04
|
|
| MD5 |
074a64df4872b451533fd43e31e44870
|
|
| BLAKE2b-256 |
78f2f584130699783043785d80cd9a90ac674e7b7b71edbe8e8f55e931e50a2a
|
File details
Details for the file epylog-0.1.33-py2.py3-none-any.whl.
File metadata
- Download URL: epylog-0.1.33-py2.py3-none-any.whl
- Upload date:
- Size: 5.7 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
efd7dfdbc31e227b11a3490da9358814724febc267665144f905b4fedc013389
|
|
| MD5 |
2ab647c73b417db114a8ada02417189b
|
|
| BLAKE2b-256 |
1143e4247031d233a41bd123141ab45c596ee16f74ccf1126d1fd7f1b91b4c5e
|