用于普罗米修斯监测的xonotic metrics出口商

xonotic-exporter的Python项目详细描述


https://travis-ci.org/bacher09/xonotic_exporter.svg?branch=masterhttps://ci.appveyor.com/api/projects/status/github/bacher09/xonotic_exporter?svg=true&branch=masterhttps://coveralls.io/repos/bacher09/xonotic_exporter/badge.svg?branch=master

用于Prometheus monitoring system的xonotic度量导出器。 度量是通过rcon(status 1command)查询服务器获得的。

安装

  • execute ^{tt2}$
  • or run ^{tt3}$ to install latest development version from github

配置

xnotic exporter由文件和cli选项配置。cli选项用于 指定要侦听的端口或地址、要使用的配置以及 配置文件用于指定度量将从何处开始的服务器 出口。配置文件是yaml字典,其中键是服务器名 (instancelabel in prometheus)和values是服务器连接选项。 下面是配置示例:

public:
  server: 172.16.254.1
  port: 26000
  rcon_password: "secretpassword"
  rcon_mode: 1
private:
  server: private.example.com
  rcon_password: "secret"
ipv6-server:
  server: 2001:db8:85a3::8a2e:370:7334
  port: 26001
  rcon_mode: 2
  rcon_password: "password"

连接选项没有几个必需的字段(serverrcon_password)和 还有一些具有默认值的可选字段(portrcon_mode)。 服务器字段可能包含IPv4或IPv6地址或DNS名称。如果你正在使用 dns名称,每次向服务器发出请求之前都会解析它,因此如果 更改DNS记录不需要重新启动导出程序即可使用新IP。 有关配置文件格式的详细信息,可以检查it’s JSON schema。 此外,还可以使用--validatecli选项检查配置的正确性。

如果编辑配置文件,则无需重新启动即可更新配置 xNotic导出程序,只需发送HUP信号来处理或发送post请求到 /-/reload终结点。

例如:

$ kill -HUP 4429   # 4429 is exporters PID
$ curl -XPOST http://localhost:9260/-/reload

普罗米修斯配置

导出器需要将服务器名称作为目标参数传递。它类似于 blackboxsnmp出口商。

普罗米修斯配置示例:

scrape_configs:
  - job_name: 'xonotic_exporter'
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: 127.0.0.1:9260
    static_configs:
      - targets: ['public', 'private', 'ipv6-server']  # server names

其他功能

而不是使用配置文件,您可以使用 python api。了解更多信息see this code。这让你有能力 动态配置和服务器自动发现。

如果要使用systemd check examples文件夹部署此服务,则 是此服务的示例systemd unit

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何下载多个。java中的PDF文件   linux Java打开文件,形成实际用户主页~/   java如何在时间线内维护TableView选择?   java Hibernate注释@Where vs@WhereJoinTable   Java读/写访问异常FileNotFoundException(访问被拒绝)   继承在Java中是否可以扩展最后一个类?   Android HttpClient使用java使应用程序崩溃。lang.OutOfMemoryError:pthread_create   java为什么即使我在proguardproject中添加了jar文件,也会出现这种错误。txt?   如果添加JButton,swing Java FocusListener和KeyListener将无法工作   java使用solrj检索json格式的SolrDocument   使用Microsoft Visual Studio代码进行Java编程   java NoClassDefFoundError:org/apache/log4j/Logger   哈希集中包含相等对象的java   java中的参数化构造函数是否需要有一个主体?   java类似于NetBeans不必要的代码检测器   Java实践问题   java Blackberry“[projectname].调试文件丢失”和“I/O错误:找不到程序”jar