stellar-account-prometheus-exporter


Namestellar-account-prometheus-exporter JSON
Version 0.0.6 PyPI version JSON
download
home_pagehttps://github.com/stellar/stellar-account-prometheus-exporter
SummaryExport stellar account balance in prometheus format
upload_time2023-11-28 07:27:27
maintainer
docs_urlNone
authorStellar Development Foundation
requires_python
licenseApache Software License 2.0
keywords prometheus exporter stellar
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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"
}
        
Elapsed time: 2.39092s