# Overview
The Stellar Account Prometheus Exporter retrieves account(s)
balance and exposes it in prometheus format.
# Configuration
Configuration file path must be provided using the --config option.
The config file is yaml formatted file:
```
networks:
- name: pubnet # Human readable name
horizon_url: https://horizon.example.com # Horizon URL
accounts:
- account_id: ABC123XYZ # Account ID
account_name: Account one # Human readable description
- account_id: DEF456ABC
account_name: Account two
- name: testnet
horizon_url: https://horizon-testnet.example.com
accounts:
- account_id: QWE789DEF
account_name: Testnet test account
```
By default the exporter listens on port 9618. This can be changes using
--port switch or "PORT" environment variable.
# Exported data
For each account the following metrics are exported:
* *stellar_account_balance*
* *stellar_account_available_balance*
* *stellar_account_buying_liabilities*
* *stellar_account_selling_liabilities*
* *stellar_account_num_sponsored*
* *stellar_account_num_sponsoring*
* *stellar_account_scrape_success*
Each metric has the following labels:
* *network* - network name from the configuration file
* *account_id* - account ID from the configuration file
* *account_name* - account name, as per configuration file
* *asset_type* - asset type
# Installing from pypi
To download/test package in pypi you can use venv:
```
python3 -m venv venv
. venv/bin/activate
```
Install:
```
python3 -m pip install stellar_account_prometheus_exporter
```
Run:
```
./venv/bin/stellar-account-prometheus-exporter --config /path/to/config.yaml
```
# Releasing new version
* ensure you bumped version number in setup.py. PyPi does not allow version reuse
* build new package:
```
python3 setup.py sdist bdist_wheel
```
* push to testpypi:
```
python3 -m twine upload --repository-url https://test.pypi.org/legacy/ dist/*
```
* test by installing the package (see above). If all good release:
```
python3 -m twine upload dist/*
```
# Docker and K8s version
This app is now dockerized. The new Dockerfile has been validated and can be used like this:
```
docker build --pull --no-cache -t <your tag>
```
Raw data
{
"_id": null,
"home_page": "https://github.com/stellar/stellar-account-prometheus-exporter",
"name": "stellar-account-prometheus-exporter",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "prometheus,exporter,stellar",
"author": "Stellar Development Foundation",
"author_email": "ops@stellar.org",
"download_url": "https://files.pythonhosted.org/packages/4e/a7/db635b0b56f502f3c4ac4aacface74129f68e2a3099de484fe6c783383b1/stellar-account-prometheus-exporter-0.0.6.tar.gz",
"platform": null,
"description": "# Overview\n\nThe Stellar Account Prometheus Exporter retrieves account(s)\nbalance and exposes it in prometheus format.\n\n# Configuration\n\nConfiguration file path must be provided using the --config option.\n\nThe config file is yaml formatted file:\n```\nnetworks:\n- name: pubnet # Human readable name\n horizon_url: https://horizon.example.com # Horizon URL\n accounts:\n - account_id: ABC123XYZ # Account ID\n account_name: Account one # Human readable description\n - account_id: DEF456ABC\n account_name: Account two\n- name: testnet\n horizon_url: https://horizon-testnet.example.com\n accounts:\n - account_id: QWE789DEF\n account_name: Testnet test account\n```\n\nBy default the exporter listens on port 9618. This can be changes using\n--port switch or \"PORT\" environment variable.\n\n# Exported data\n\nFor each account the following metrics are exported:\n * *stellar_account_balance*\n * *stellar_account_available_balance*\n * *stellar_account_buying_liabilities*\n * *stellar_account_selling_liabilities*\n * *stellar_account_num_sponsored*\n * *stellar_account_num_sponsoring*\n * *stellar_account_scrape_success*\n\nEach metric has the following labels:\n * *network* - network name from the configuration file\n * *account_id* - account ID from the configuration file\n * *account_name* - account name, as per configuration file\n * *asset_type* - asset type\n\n# Installing from pypi\n\nTo download/test package in pypi you can use venv:\n```\npython3 -m venv venv\n. venv/bin/activate\n```\n\nInstall:\n```\npython3 -m pip install stellar_account_prometheus_exporter\n```\n\nRun:\n```\n./venv/bin/stellar-account-prometheus-exporter --config /path/to/config.yaml\n```\n\n# Releasing new version\n\n* ensure you bumped version number in setup.py. PyPi does not allow version reuse\n* build new package:\n```\npython3 setup.py sdist bdist_wheel\n```\n* push to testpypi:\n```\npython3 -m twine upload --repository-url https://test.pypi.org/legacy/ dist/*\n```\n* test by installing the package (see above). If all good release:\n```\npython3 -m twine upload dist/*\n```\n\n# Docker and K8s version\nThis app is now dockerized. The new Dockerfile has been validated and can be used like this:\n```\ndocker build --pull --no-cache -t <your tag>\n```\n",
"bugtrack_url": null,
"license": "Apache Software License 2.0",
"summary": "Export stellar account balance in prometheus format",
"version": "0.0.6",
"project_urls": {
"Homepage": "https://github.com/stellar/stellar-account-prometheus-exporter"
},
"split_keywords": [
"prometheus",
"exporter",
"stellar"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "62de2634bfd43cad883223ee0477cd36d087e7bf0c74be25f7dad5e472ddc292",
"md5": "b4529f5abee51443108eeca27dd3b717",
"sha256": "957e38a022089857d9efe418fe468f0d6b186cc6fd9c1abc5aa7f849b8300194"
},
"downloads": -1,
"filename": "stellar_account_prometheus_exporter-0.0.6-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b4529f5abee51443108eeca27dd3b717",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 9440,
"upload_time": "2023-11-28T07:27:25",
"upload_time_iso_8601": "2023-11-28T07:27:25.917028Z",
"url": "https://files.pythonhosted.org/packages/62/de/2634bfd43cad883223ee0477cd36d087e7bf0c74be25f7dad5e472ddc292/stellar_account_prometheus_exporter-0.0.6-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4ea7db635b0b56f502f3c4ac4aacface74129f68e2a3099de484fe6c783383b1",
"md5": "de054ba015930d579cda515ef2ae9758",
"sha256": "8b02dfc7632ab17d8558bb206c5d83114411642fa7ec96901f1a1291cc129da8"
},
"downloads": -1,
"filename": "stellar-account-prometheus-exporter-0.0.6.tar.gz",
"has_sig": false,
"md5_digest": "de054ba015930d579cda515ef2ae9758",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8992,
"upload_time": "2023-11-28T07:27:27",
"upload_time_iso_8601": "2023-11-28T07:27:27.811612Z",
"url": "https://files.pythonhosted.org/packages/4e/a7/db635b0b56f502f3c4ac4aacface74129f68e2a3099de484fe6c783383b1/stellar-account-prometheus-exporter-0.0.6.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-11-28 07:27:27",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "stellar",
"github_project": "stellar-account-prometheus-exporter",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "stellar-account-prometheus-exporter"
}