# syslog-ng CFG Helper
This tool makes configuring [syslog-ng](https://github.com/syslog-ng/syslog-ng) a bit easier by listing the options of each available driver.
The options are generated from [syslog-ng v4.6.0](https://github.com/syslog-ng/syslog-ng/releases/tag/syslog-ng-4.6.0).
## Quickstart
### Install with pipx
```
pipx install syslog-ng-cfg-helper
```
### List the contexts
```
syslog-ng-cfg-helper
```
### List the drivers in a context
```
syslog-ng-cfg-helper --context parser
```
### List the options of a driver
```
syslog-ng-cfg-helper --context parser --driver csv-parser
```
### Example
[![Example](https://raw.githubusercontent.com/alltilla/syslog-ng-cfg-helper/assets/example.gif)](https://raw.githubusercontent.com/alltilla/syslog-ng-cfg-helper/assets/example.gif)
## Development
The tool is still in development, but most of the drivers are supported.
Missing features are:
* Proper `rewrite` support.
* Proper `filter` support.
* Drivers defined in `SCL`s.
* Drivers defined with confgen.
Any contribution is welcome :)
### Local setup
The project uses [poetry](https://python-poetry.org/) as a dependency management system.
Building of the option database needs the [neologism](https://github.com/alltilla/neologism) pip package, which gets installed by poetry, however it has another dependency, which is [bison](https://www.gnu.org/software/bison/). Make sure to install bison (at least 3.7.6) on you system if you wan't to develop locally. `make bison` can help with that.
The [Makefile](https://github.com/alltilla/syslog-ng-cfg-helper/blob/master/Makefile) consists of some useful commands:
* `make venv` prepares the venv.
* `make bison` downloads bison 3.7.6, builds it and installs it under `/usr/local`.
* You can change the install path with `make bison BISON_INSTALL_PATH=...`
* `make check` runs the unit tests, style-checkers and linters.
* `make format` formats the code.
* `make db` downloads the syslog-ng release tarball and generates the option database.
* `make db SYSLOG_NG_SOURCE_DIR=/path/to/syslog-ng` creates a tarball from the state of the syslog-ng source dir and generates the option database.
* `make package` creates the pip package.
## Community
You can reach out to the syslog-ng community on Discord:
[![Axoflow Discord Server](https://discordapp.com/api/guilds/1082023686028148877/widget.png?style=banner2)](https://discord.gg/E65kP9aZGm)
Raw data
{
"_id": null,
"home_page": "https://github.com/alltilla/syslog-ng-cfg-helper",
"name": "syslog-ng-cfg-helper",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8,<4.0",
"maintainer_email": "",
"keywords": "syslog-ng,configuration,cfg",
"author": "Attila Szakacs",
"author_email": "szakacs.attila96@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/01/71/6a5e952793091c52a3d285b474b9ecb86ebe25f35d8a1229bb030ccfaf86/syslog_ng_cfg_helper-1.8.1.tar.gz",
"platform": null,
"description": "# syslog-ng CFG Helper\n\nThis tool makes configuring [syslog-ng](https://github.com/syslog-ng/syslog-ng) a bit easier by listing the options of each available driver.\n\nThe options are generated from [syslog-ng v4.6.0](https://github.com/syslog-ng/syslog-ng/releases/tag/syslog-ng-4.6.0).\n\n## Quickstart\n\n### Install with pipx\n```\npipx install syslog-ng-cfg-helper\n```\n\n### List the contexts\n```\nsyslog-ng-cfg-helper\n```\n\n### List the drivers in a context\n```\nsyslog-ng-cfg-helper --context parser\n```\n\n### List the options of a driver\n```\nsyslog-ng-cfg-helper --context parser --driver csv-parser\n```\n\n### Example\n[![Example](https://raw.githubusercontent.com/alltilla/syslog-ng-cfg-helper/assets/example.gif)](https://raw.githubusercontent.com/alltilla/syslog-ng-cfg-helper/assets/example.gif)\n\n## Development\nThe tool is still in development, but most of the drivers are supported.\n\nMissing features are:\n * Proper `rewrite` support.\n * Proper `filter` support.\n * Drivers defined in `SCL`s.\n * Drivers defined with confgen.\n\nAny contribution is welcome :)\n\n### Local setup\nThe project uses [poetry](https://python-poetry.org/) as a dependency management system.\n\nBuilding of the option database needs the [neologism](https://github.com/alltilla/neologism) pip package, which gets installed by poetry, however it has another dependency, which is [bison](https://www.gnu.org/software/bison/). Make sure to install bison (at least 3.7.6) on you system if you wan't to develop locally. `make bison` can help with that.\n\nThe [Makefile](https://github.com/alltilla/syslog-ng-cfg-helper/blob/master/Makefile) consists of some useful commands:\n * `make venv` prepares the venv.\n * `make bison` downloads bison 3.7.6, builds it and installs it under `/usr/local`.\n * You can change the install path with `make bison BISON_INSTALL_PATH=...`\n * `make check` runs the unit tests, style-checkers and linters.\n * `make format` formats the code.\n * `make db` downloads the syslog-ng release tarball and generates the option database.\n * `make db SYSLOG_NG_SOURCE_DIR=/path/to/syslog-ng` creates a tarball from the state of the syslog-ng source dir and generates the option database.\n * `make package` creates the pip package.\n\n## Community\nYou can reach out to the syslog-ng community on Discord:\n\n[![Axoflow Discord Server](https://discordapp.com/api/guilds/1082023686028148877/widget.png?style=banner2)](https://discord.gg/E65kP9aZGm)\n",
"bugtrack_url": null,
"license": "GPL-3.0-only",
"summary": "Configuration helper for syslog-ng.",
"version": "1.8.1",
"project_urls": {
"Homepage": "https://github.com/alltilla/syslog-ng-cfg-helper",
"Repository": "https://github.com/alltilla/syslog-ng-cfg-helper"
},
"split_keywords": [
"syslog-ng",
"configuration",
"cfg"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "0f6676dcd558c6bc38904b4d16a571b0131eb4672a6fc1a30af9e71d0d79b8d6",
"md5": "b562336981275ec8109934bc9d9325d3",
"sha256": "1f1a580a4cc8d0a2b4acfe927cbb0b7be52cecd70dfae6644d9b76c08ca27cf8"
},
"downloads": -1,
"filename": "syslog_ng_cfg_helper-1.8.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b562336981275ec8109934bc9d9325d3",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8,<4.0",
"size": 56509,
"upload_time": "2024-02-09T10:29:30",
"upload_time_iso_8601": "2024-02-09T10:29:30.865911Z",
"url": "https://files.pythonhosted.org/packages/0f/66/76dcd558c6bc38904b4d16a571b0131eb4672a6fc1a30af9e71d0d79b8d6/syslog_ng_cfg_helper-1.8.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "01716a5e952793091c52a3d285b474b9ecb86ebe25f35d8a1229bb030ccfaf86",
"md5": "7b1f306d769bbf42f9b568c00cfdf6cf",
"sha256": "1ac93314feea65cd63b2536ac2e6e2eb0ec4f5ebe18fd67ebf73a044dccb7f57"
},
"downloads": -1,
"filename": "syslog_ng_cfg_helper-1.8.1.tar.gz",
"has_sig": false,
"md5_digest": "7b1f306d769bbf42f9b568c00cfdf6cf",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8,<4.0",
"size": 40040,
"upload_time": "2024-02-09T10:29:32",
"upload_time_iso_8601": "2024-02-09T10:29:32.529986Z",
"url": "https://files.pythonhosted.org/packages/01/71/6a5e952793091c52a3d285b474b9ecb86ebe25f35d8a1229bb030ccfaf86/syslog_ng_cfg_helper-1.8.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-02-09 10:29:32",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "alltilla",
"github_project": "syslog-ng-cfg-helper",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"lcname": "syslog-ng-cfg-helper"
}