SystemLogger
============
..image:: https://pyup.io/repos/github/d9pouces/SystemLogger/shield.svg
:target: https://pyup.io/repos/github/d9pouces/SystemLogger/
:alt: Updates
Create and configure a logger using a global configuration file.
This module is intended for logging my Python system scripts, without redeclaring a lot of boilerplate.
This module is not meant to be highly customizable, but to have the same logging configuration in scripts with a
minimal effort.
The default configuration file is `/etc/python_logging.ini`.
Usage
-----
```bash
python3 -m pip install systemlogger
cat << EOF | sudo tee /etc/python_logging.ini
[logging]
sentry_dsn = https://username@sentry.example.com/1
loki_url = https://username:password@localhost:3100/loki/api/v1/push
syslog_url = tcp://127.0.0.1:10514
# only udp:// and tcp:// protocols can be used for syslog
logfile_directory = /tmp
# the filename will be /tmp/{application}.log
logfile_max_size = 1000000
# if max_size is not set (or is 0), the file will never be rotated
logfile_backup_count = 3
# number of backup files (for example, only /tmp/{application}.log.1 is created if logfile_backup_count == 1)
console = true
# errors and above are sent to stderr, infos and below are sent to stdout
level = info
# minimal level of transmitted log records
source = python
# added as "log_source" tag in sentry and loki
EOF
python3 -c 'from systemlogger import getLogger ; logger = getLogger(name="demo") ; logger.warning("log warning test") ; logger.error("log error test")'
```
In Grafana/Loki and in Sentry, you can now select all Python scripts with the `log_source` tag and a specific script
with
the `application` tag.
Raw data
{
"_id": null,
"home_page": "https://github.com/d9pouces/SystemLogger",
"name": "SystemLogger",
"maintainer": "Matthieu Gallet",
"docs_url": null,
"requires_python": ">=3.8,<4.0",
"maintainer_email": "github@19pouces.net",
"keywords": "",
"author": "Matthieu Gallet",
"author_email": "github@19pouces.net",
"download_url": "https://files.pythonhosted.org/packages/b1/ff/23eb3f822f759371755d13b2bf54777f7fc015572bfb387fb8ca494e7c8c/systemlogger-0.1.9.tar.gz",
"platform": null,
"description": "SystemLogger\n============\n\n\n..image:: https://pyup.io/repos/github/d9pouces/SystemLogger/shield.svg\n:target: https://pyup.io/repos/github/d9pouces/SystemLogger/\n:alt: Updates\n\nCreate and configure a logger using a global configuration file.\nThis module is intended for logging my Python system scripts, without redeclaring a lot of boilerplate.\nThis module is not meant to be highly customizable, but to have the same logging configuration in scripts with a\nminimal effort.\n\nThe default configuration file is `/etc/python_logging.ini`.\n\nUsage\n-----\n\n```bash\npython3 -m pip install systemlogger\ncat << EOF | sudo tee /etc/python_logging.ini\n[logging]\nsentry_dsn = https://username@sentry.example.com/1\nloki_url = https://username:password@localhost:3100/loki/api/v1/push\nsyslog_url = tcp://127.0.0.1:10514\n# only udp:// and tcp:// protocols can be used for syslog\nlogfile_directory = /tmp\n# the filename will be /tmp/{application}.log\nlogfile_max_size = 1000000\n# if max_size is not set (or is 0), the file will never be rotated\nlogfile_backup_count = 3\n# number of backup files (for example, only /tmp/{application}.log.1 is created if logfile_backup_count == 1)\nconsole = true\n# errors and above are sent to stderr, infos and below are sent to stdout\nlevel = info\n# minimal level of transmitted log records\nsource = python\n# added as \"log_source\" tag in sentry and loki\nEOF\npython3 -c 'from systemlogger import getLogger ; logger = getLogger(name=\"demo\") ; logger.warning(\"log warning test\") ; logger.error(\"log error test\")'\n```\n\nIn Grafana/Loki and in Sentry, you can now select all Python scripts with the `log_source` tag and a specific script\nwith\nthe `application` tag.\n\n",
"bugtrack_url": null,
"license": "CECILL-B",
"summary": "Create and configure a logger using a global configuration file.",
"version": "0.1.9",
"project_urls": {
"Documentation": "https://github.com/d9pouces/SystemLogger",
"Homepage": "https://github.com/d9pouces/SystemLogger",
"Repository": "https://github.com/d9pouces/SystemLogger"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c36f995c8759613bf3927a3e09ddd7956ed8b426c0b20834149b3f8ec611a943",
"md5": "18ad2ef4486f07eb744492c4513371a8",
"sha256": "3179ed43ea01bd8b3d8e929b79445128b68ab0bf106467a2ac64b26c130cef1d"
},
"downloads": -1,
"filename": "systemlogger-0.1.9-py3-none-any.whl",
"has_sig": false,
"md5_digest": "18ad2ef4486f07eb744492c4513371a8",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8,<4.0",
"size": 12326,
"upload_time": "2023-12-01T20:41:26",
"upload_time_iso_8601": "2023-12-01T20:41:26.559120Z",
"url": "https://files.pythonhosted.org/packages/c3/6f/995c8759613bf3927a3e09ddd7956ed8b426c0b20834149b3f8ec611a943/systemlogger-0.1.9-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b1ff23eb3f822f759371755d13b2bf54777f7fc015572bfb387fb8ca494e7c8c",
"md5": "cb06c6d94a54f11b0b10d90f1f8a7749",
"sha256": "fc8412e77cce9cbdbb79c576935cdad23669456e4a692dbba7f92403e95b677d"
},
"downloads": -1,
"filename": "systemlogger-0.1.9.tar.gz",
"has_sig": false,
"md5_digest": "cb06c6d94a54f11b0b10d90f1f8a7749",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8,<4.0",
"size": 11895,
"upload_time": "2023-12-01T20:41:28",
"upload_time_iso_8601": "2023-12-01T20:41:28.186826Z",
"url": "https://files.pythonhosted.org/packages/b1/ff/23eb3f822f759371755d13b2bf54777f7fc015572bfb387fb8ca494e7c8c/systemlogger-0.1.9.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-12-01 20:41:28",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "d9pouces",
"github_project": "SystemLogger",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "systemlogger"
}