overkiz-exporter


Nameoverkiz-exporter JSON
Version 1.1.3 PyPI version JSON
download
home_pageNone
SummaryNone
upload_time2025-01-14 18:42:13
maintainerNone
docs_urlNone
authorFrançois Schmidts
requires_python<4.0,>=3.12
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![PyPI - Version](https://img.shields.io/pypi/v/overkiz-exporter)](https://pypi.org/project/overkiz-exporter/) [![Docker Image Version](https://img.shields.io/docker/v/jaesivsm/overkiz-exporter)](https://hub.docker.com/r/jaesivsm/overkiz-exporter/tags)

# Overkiz Exporter

A simple open metrics exporter for metrics yielded from overkiz api.

## Metrics served

* `overkiz_exporter`: Will serve various metrics about the exporter itself.
* `overkiz_measurable`: Will export any float or integer value returned by the overkiz API and tag it with the device specifics.
* `overkiz_label`: Will export any string values returned by the overkiz API. The string value will be placed in the `label` label and the value set to `1`.

## Used labels

| Label              | Available on                          | Comment                                                                                  |
|--------------------|---------------------------------------|------------------------------------------------------------------------------------------|
| `status`           | `overkiz_exporter`                    | Any value, describe the runtime status of the exporter                                   |
| `device_id`        | `overkiz_measurable`, `overkiz_label` | The device id of the current metric                                                      |
| `device_label`     | `overkiz_measurable`, `overkiz_label` | The device name, may be customized                                                       |
| `metric_namespace` | `overkiz_measurable`, `overkiz_label` | The metric namespace, extracted from the API name (example: `core`, `modbuslink`)        |
| `metric_name`      | `overkiz_measurable`, `overkiz_label` | The metric name, extracted from the API name (example: `NameState`, `NumberOfTankState`) |
| `label`            | `overkiz_measurable`                  | The value outputed by the API (example: `Heating`, `off)                                 |

## Example configuration

```json
{
    "credentials": [
        {
            "username": "<login to your atlantic account>",
            "password": "<password to your atlantic account>",
            "servertype": "ATLANTIC_COZYTOUCH"
        }
    ]
}
```

## Running it

For the next few bits of code, we'll suppose you have a working configuration above in `~/.config/overkiz.json`.

### ... with python:

```shell
pip install overkiz-exporter
python -m overkiz_exporter
```

### ... with docker:

```shell
 docker run -v ~/.config/:/etc/overkiz/:ro -p 9100:9100 overkiz-exporter:main
```

You'll then be able retrieve some values:

```shell
curl localhost:9100/metrics

# HELP overkiz_exporter
# TYPE overkiz_exporter gauge
overkiz_exporter{status="loop_interval"} 60.0
overkiz_exporter{status="credentials_count"} 1.0
overkiz_exporter{status="ok"} 1.0
overkiz_exporter{status="nok"} 0.0
[...]
```

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "overkiz-exporter",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.12",
    "maintainer_email": null,
    "keywords": null,
    "author": "Fran\u00e7ois Schmidts",
    "author_email": "francois@schmidts.fr",
    "download_url": "https://files.pythonhosted.org/packages/38/bf/e52c4d47dea19097a2bf8faa7b16c216bac8d853bacf7db910a33abb874e/overkiz_exporter-1.1.3.tar.gz",
    "platform": null,
    "description": "[![PyPI - Version](https://img.shields.io/pypi/v/overkiz-exporter)](https://pypi.org/project/overkiz-exporter/) [![Docker Image Version](https://img.shields.io/docker/v/jaesivsm/overkiz-exporter)](https://hub.docker.com/r/jaesivsm/overkiz-exporter/tags)\n\n# Overkiz Exporter\n\nA simple open metrics exporter for metrics yielded from overkiz api.\n\n## Metrics served\n\n* `overkiz_exporter`: Will serve various metrics about the exporter itself.\n* `overkiz_measurable`: Will export any float or integer value returned by the overkiz API and tag it with the device specifics.\n* `overkiz_label`: Will export any string values returned by the overkiz API. The string value will be placed in the `label` label and the value set to `1`.\n\n## Used labels\n\n| Label              | Available on                          | Comment                                                                                  |\n|--------------------|---------------------------------------|------------------------------------------------------------------------------------------|\n| `status`           | `overkiz_exporter`                    | Any value, describe the runtime status of the exporter                                   |\n| `device_id`        | `overkiz_measurable`, `overkiz_label` | The device id of the current metric                                                      |\n| `device_label`     | `overkiz_measurable`, `overkiz_label` | The device name, may be customized                                                       |\n| `metric_namespace` | `overkiz_measurable`, `overkiz_label` | The metric namespace, extracted from the API name (example: `core`, `modbuslink`)        |\n| `metric_name`      | `overkiz_measurable`, `overkiz_label` | The metric name, extracted from the API name (example: `NameState`, `NumberOfTankState`) |\n| `label`            | `overkiz_measurable`                  | The value outputed by the API (example: `Heating`, `off)                                 |\n\n## Example configuration\n\n```json\n{\n    \"credentials\": [\n        {\n            \"username\": \"<login to your atlantic account>\",\n            \"password\": \"<password to your atlantic account>\",\n            \"servertype\": \"ATLANTIC_COZYTOUCH\"\n        }\n    ]\n}\n```\n\n## Running it\n\nFor the next few bits of code, we'll suppose you have a working configuration above in `~/.config/overkiz.json`.\n\n### ... with python:\n\n```shell\npip install overkiz-exporter\npython -m overkiz_exporter\n```\n\n### ... with docker:\n\n```shell\n docker run -v ~/.config/:/etc/overkiz/:ro -p 9100:9100 overkiz-exporter:main\n```\n\nYou'll then be able retrieve some values:\n\n```shell\ncurl localhost:9100/metrics\n\n# HELP overkiz_exporter\n# TYPE overkiz_exporter gauge\noverkiz_exporter{status=\"loop_interval\"} 60.0\noverkiz_exporter{status=\"credentials_count\"} 1.0\noverkiz_exporter{status=\"ok\"} 1.0\noverkiz_exporter{status=\"nok\"} 0.0\n[...]\n```\n",
    "bugtrack_url": null,
    "license": null,
    "summary": null,
    "version": "1.1.3",
    "project_urls": null,
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "057c4fd3dda04de6ca3cf27c6d7dce61a4dbadd98e17cb925e6245698256fcfa",
                "md5": "d40e71944692e62fbffac6ab7cc5ab34",
                "sha256": "f076aab0ff5054fdf91966854df8f9823dcba8fc3103f31e5b2b38ba546efb5e"
            },
            "downloads": -1,
            "filename": "overkiz_exporter-1.1.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "d40e71944692e62fbffac6ab7cc5ab34",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.12",
            "size": 3431,
            "upload_time": "2025-01-14T18:42:10",
            "upload_time_iso_8601": "2025-01-14T18:42:10.374766Z",
            "url": "https://files.pythonhosted.org/packages/05/7c/4fd3dda04de6ca3cf27c6d7dce61a4dbadd98e17cb925e6245698256fcfa/overkiz_exporter-1.1.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "38bfe52c4d47dea19097a2bf8faa7b16c216bac8d853bacf7db910a33abb874e",
                "md5": "666c34dee05e9cc59653345b0c7d37b3",
                "sha256": "a43f360c1e777745edbd30fc491dd8815ec794885a61b12b803705a0492ef4f1"
            },
            "downloads": -1,
            "filename": "overkiz_exporter-1.1.3.tar.gz",
            "has_sig": false,
            "md5_digest": "666c34dee05e9cc59653345b0c7d37b3",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.12",
            "size": 3129,
            "upload_time": "2025-01-14T18:42:13",
            "upload_time_iso_8601": "2025-01-14T18:42:13.886663Z",
            "url": "https://files.pythonhosted.org/packages/38/bf/e52c4d47dea19097a2bf8faa7b16c216bac8d853bacf7db910a33abb874e/overkiz_exporter-1.1.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-01-14 18:42:13",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "overkiz-exporter"
}
        
Elapsed time: 1.73041s