# Error Reporting Python
This project contains a python library for describing Exasol error messages.
This library lets you define errors with a uniform set of attributes.
Furthermore, the error message is implemented to be parseable,
so that you can extract an error catalog from the code.
## In a Nutshell
Create an error object:
```python
exa_error_obj = ExaError.message_builder('E-TEST-1')\
.message("Not enough space on device {{device}}.")\
.mitigation("Delete something from {{device}}.")\
.mitigation("Create larger partition.")\
.parameter("device", "/dev/sda1", "name of the device")
```
Use it as string:
```python
print(exa_error_obj)
```
Result:
```
E-TEST-1: Not enough space on device '/dev/sda1'. Known mitigations:
* Delete something from '/dev/sda1'.
* Create larger partition.
```
Check out the [user guide](doc/user_guide/user_guide.md) for more details.
### Information for Users
* [User Guide](doc/user_guide/user_guide.md)
* [Changelog](doc/changes/changelog.md)
You can find corresponding libraries for other languages here:
* [Error reporting Java](https://github.com/exasol/error-reporting-java)
* [Error reporting Lua](https://github.com/exasol/error-reporting-lua)
* [Error reporting Go](https://github.com/exasol/error-reporting-go)
* [Error reporting C#](https://github.com/exasol/error-reporting-csharp)
### Information for Contributors
* [System Requirement Specification](doc/system_requirements.md)
* [Design](doc/design.md)
* [Dependencies](doc/dependencies.md)
Raw data
{
"_id": null,
"home_page": "https://github.com/exasol/error-reporting-python",
"name": "exasol-error-reporting-python",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8,<4.0",
"maintainer_email": "",
"keywords": "exasol,python,error-reporting",
"author": "Umit Buyuksahin",
"author_email": "umit.buyuksahin@exasol.com",
"download_url": "https://files.pythonhosted.org/packages/38/6a/c40c95c9842514ebb1e38e7983cce1c53b360dd8b04851887fd92b2ae60c/exasol-error-reporting-python-0.3.0.tar.gz",
"platform": null,
"description": "# Error Reporting Python\n\nThis project contains a python library for describing Exasol error messages. \nThis library lets you define errors with a uniform set of attributes. \nFurthermore, the error message is implemented to be parseable, \nso that you can extract an error catalog from the code.\n\n\n## In a Nutshell\nCreate an error object:\n\n```python\nexa_error_obj = ExaError.message_builder('E-TEST-1')\\\n .message(\"Not enough space on device {{device}}.\")\\\n .mitigation(\"Delete something from {{device}}.\")\\\n .mitigation(\"Create larger partition.\")\\\n .parameter(\"device\", \"/dev/sda1\", \"name of the device\") \n```\n\nUse it as string:\n\n```python\nprint(exa_error_obj)\n```\n\nResult:\n```\nE-TEST-1: Not enough space on device '/dev/sda1'. Known mitigations:\n* Delete something from '/dev/sda1'.\n* Create larger partition.\n```\n\n\nCheck out the [user guide](doc/user_guide/user_guide.md) for more details.\n\n### Information for Users\n\n* [User Guide](doc/user_guide/user_guide.md)\n* [Changelog](doc/changes/changelog.md)\n\nYou can find corresponding libraries for other languages here:\n\n* [Error reporting Java](https://github.com/exasol/error-reporting-java)\n* [Error reporting Lua](https://github.com/exasol/error-reporting-lua)\n* [Error reporting Go](https://github.com/exasol/error-reporting-go)\n* [Error reporting C#](https://github.com/exasol/error-reporting-csharp)\n\n### Information for Contributors\n\n* [System Requirement Specification](doc/system_requirements.md)\n* [Design](doc/design.md)\n* [Dependencies](doc/dependencies.md)",
"bugtrack_url": null,
"license": "MIT",
"summary": "Exasol Python Error Reporting",
"version": "0.3.0",
"split_keywords": [
"exasol",
"python",
"error-reporting"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "182949db6dd7a490d15d0c4fc5eef67d1cfc1486264ab37d1931442b2173bf8e",
"md5": "c16006bc962ba7990c4859de66572f3a",
"sha256": "727c429118b80e07715530d3b9159e8e43502bef2da34cbbac3c79465c901ce8"
},
"downloads": -1,
"filename": "exasol_error_reporting_python-0.3.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c16006bc962ba7990c4859de66572f3a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8,<4.0",
"size": 7611,
"upload_time": "2023-03-28T09:29:33",
"upload_time_iso_8601": "2023-03-28T09:29:33.789548Z",
"url": "https://files.pythonhosted.org/packages/18/29/49db6dd7a490d15d0c4fc5eef67d1cfc1486264ab37d1931442b2173bf8e/exasol_error_reporting_python-0.3.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "386ac40c95c9842514ebb1e38e7983cce1c53b360dd8b04851887fd92b2ae60c",
"md5": "f31941cc946b69ac91170a38fd2ba516",
"sha256": "5b417e21408743d3191cface1b3cadfd40d8db0b88a88ee58f753ffcedaa2e5a"
},
"downloads": -1,
"filename": "exasol-error-reporting-python-0.3.0.tar.gz",
"has_sig": false,
"md5_digest": "f31941cc946b69ac91170a38fd2ba516",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8,<4.0",
"size": 5633,
"upload_time": "2023-03-28T09:29:31",
"upload_time_iso_8601": "2023-03-28T09:29:31.986374Z",
"url": "https://files.pythonhosted.org/packages/38/6a/c40c95c9842514ebb1e38e7983cce1c53b360dd8b04851887fd92b2ae60c/exasol-error-reporting-python-0.3.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-03-28 09:29:31",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "exasol",
"github_project": "error-reporting-python",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "exasol-error-reporting-python"
}