{ "info": { "author": "Slava Bacherikov", "author_email": "slava@bacher09.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3 :: Only", "Topic :: Games/Entertainment", "Topic :: Games/Entertainment :: First Person Shooters", "Topic :: Internet" ], "description": "xonotic_exporter\n================\n\n.. image:: https://travis-ci.org/bacher09/xonotic_exporter.svg?branch=master\n :target: https://travis-ci.org/bacher09/xonotic_exporter\n\n.. image:: https://ci.appveyor.com/api/projects/status/github/bacher09/xonotic_exporter?svg=true&branch=master\n :target: https://ci.appveyor.com/project/bacher09/xonotic-exporter\n\n.. image:: https://coveralls.io/repos/bacher09/xonotic_exporter/badge.svg?branch=master\n :target: https://coveralls.io/r/bacher09/xonotic_exporter?branch=master \n\n\nXonotic metrics exporter for `Prometheus monitoring system`_.\nMetrics are obtained by querying server via rcon (``status 1`` command).\n\nInstallation\n------------\n\n * execute ``pip install xonotic_exporter``\n * or run ``pip install -e git+https://github.com/bacher09/xonotic_exporter#egg=xonotic_exporter``\n to install latest development version from github\n\n\nConfiguration\n-------------\n\nXonotic exporter is configured by file and CLI options. CLI options is used to\nspecify which port or address to listen, what configuration to use and\nconfiguration file is used to specify servers from where metrics will be\nexported. Configuration file is YAML dictionary, where keys are server names\n(`instance` label in prometheus) and values are server connection options.\nHere's example configuration::\n\n public:\n server: 172.16.254.1\n port: 26000\n rcon_password: \"secretpassword\"\n rcon_mode: 1\n private:\n server: private.example.com\n rcon_password: \"secret\"\n ipv6-server:\n server: 2001:db8:85a3::8a2e:370:7334\n port: 26001\n rcon_mode: 2\n rcon_password: \"password\"\n\n\nConnection options have few required fields (``server``, ``rcon_password``) and\nalso some optional fields (``port``, ``rcon_mode``) which have default value.\n`server` field might contain IPv4 or IPv6 address or DNS name. If you are using\nDNS name, it will be resolved each time before making request to server, so if\nyou change DNS record you don't need to restart exporter to use new IP.\nFor more info about configuration file format you can check `it's JSON schema`__.\nAlso, you can check correctness of configuration using ``--validate`` CLI option.\n\n__ json_schema_\n\nIf you edit configuration file, you can update configuration without restarting\nXonotic exporter, just send ``HUP`` signal to process or send POST request to\n``/-/reload`` endpoint.\n\nFor example::\n\n $ kill -HUP 4429 # 4429 is exporters PID\n $ curl -XPOST http://localhost:9260/-/reload\n\n\nPrometheus Configuration\n------------------------\n\nThe exporter needs server name to be passed as target parameter. It similar to\nblackbox_ and snmp_ exporters.\n\nExample prometheus configuration::\n\n scrape_configs:\n - job_name: 'xonotic_exporter'\n relabel_configs:\n - source_labels: [__address__]\n target_label: __param_target\n - source_labels: [__param_target]\n target_label: instance\n - target_label: __address__\n replacement: 127.0.0.1:9260\n static_configs:\n - targets: ['public', 'private', 'ipv6-server'] # server names\n\n\nOther features\n--------------\n\nInstead off using configuration file you can start xonotic exporter using\nPython API. For more information `see this code`__. This gives you ability for\ndynamic configuration and server autodiscovery.\n\n__ dynamic_configuration\n\nIf you going to deploy this service with systemd check examples folder, there\nis example `systemd unit`__ for this service.\n\n__ systemd_unit_\n\n\n.. _`Prometheus monitoring system`: https://prometheus.io/\n.. _json_schema: https://github.com/bacher09/xonotic_exporter/blob/master/xonotic_exporter/config_schema.json\n.. _blackbox: https://github.com/prometheus/blackbox_exporter\n.. _snmp: https://github.com/prometheus/snmp_exporter\n.. _dynamic_configuration: https://github.com/bacher09/xonotic_exporter/blob/master/xonotic_exporter/cli.py#L56\n.. _systemd_unit: https://github.com/bacher09/xonotic_exporter/blob/master/examples/xonotic_exporter.service", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "rcon,xonotic,darkplaces,quake,nexuiz,prometheusnexuiz,metrics,monitoring", "license": "GPLv3", "maintainer": "", "maintainer_email": "", "name": "xonotic-exporter", "package_url": "https://pypi.org/project/xonotic-exporter/", "platform": "any", "project_url": "https://pypi.org/project/xonotic-exporter/", "project_urls": null, "release_url": "https://pypi.org/project/xonotic-exporter/0.1/", "requires_dist": null, "requires_python": "", "summary": "Xonotic metrics exporter for prometheus monitoring", "version": "0.1" }, "last_serial": 3687389, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "f69aeaa938d18ed1eb7f7f42297b4d1b", "sha256": "5d662fbf77f56cc54455682bd2eccf1f152f3bc7e3013fac0b27aca8dedc291e" }, "downloads": -1, "filename": "xonotic_exporter-0.1.tar.gz", "has_sig": false, "md5_digest": "f69aeaa938d18ed1eb7f7f42297b4d1b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21209, "upload_time": "2018-03-20T11:23:13", "url": "https://files.pythonhosted.org/packages/6d/e9/2d972dbd43ec60530fd97272c787fa8d3bd20c78027a75f20ee294abbb25/xonotic_exporter-0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f69aeaa938d18ed1eb7f7f42297b4d1b", "sha256": "5d662fbf77f56cc54455682bd2eccf1f152f3bc7e3013fac0b27aca8dedc291e" }, "downloads": -1, "filename": "xonotic_exporter-0.1.tar.gz", "has_sig": false, "md5_digest": "f69aeaa938d18ed1eb7f7f42297b4d1b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21209, "upload_time": "2018-03-20T11:23:13", "url": "https://files.pythonhosted.org/packages/6d/e9/2d972dbd43ec60530fd97272c787fa8d3bd20c78027a75f20ee294abbb25/xonotic_exporter-0.1.tar.gz" } ] }