#prometheus-exporter #switch #plus #utility #metrics #netgear #pro-safe

app prosafe_exporter

ProSAFE Plus实用程序支持的NETGEAR交换机的Prometheus导出器

12个版本

0.2.8 2021年1月4日
0.2.7 2019年6月4日
0.2.6 2019年5月6日
0.2.5 2019年4月2日
0.1.2 2018年10月4日

#7 in #plus

MIT 许可证

33KB
619

prosafe_exporter

Prometheus 导出器,支持ProSAFE Plus实用程序下的NETGEAR交换机。

Actions Status Crates.io codecov

导出指标

指标 描述 标签
prosafe_up 上一次查询成功
prosafe_receive_bytes_total 接收的字节数 端口
prosafe_transmit_bytes_total 发送的字节数 端口
prosafe_error_packets_total 传输错误包数 端口
prosafe_link_speed 链路速度(Mbps) 端口
prosafe_build_info prosafe_exporter 构建信息 版本,修订,rust版本

测试交换机

  • XS708E
  • GS308E
  • GS116Ev2
  • GS108Ev3
  • GS105Ev2
  • GS108PEv3
  • JGS524PE

安装

发布页面 下载,并解压到任何目录(例如 /usr/local/bin)。以下为 example 目录中的示例文件。

文件 描述
example/prosafe_exporter.service systemd 单元文件

如果发布版本不符合您的环境,您可以从源代码进行构建和安装。

cargo install prosafe_exporter

用法

prosafe_exporter --web.listen-address=":9493"

默认监听端口为9493。可以通过 --web.listen-address 选项进行更改。

ProSAFE交换机需要将交换机管理模式设置为“Web浏览器和Plus实用程序”,以便导出器能够正确工作。

Prometheus服务器配置

prosafe_exporter的目标交换机可以通过主机名和网络接口名称的配对进行配置(例如 switch1:eth0)。网络接口必须属于与交换机相同的子网。

Prometheus服务器配置类似于 SNMP导出器。以下是一个配置示例

- job_name: 'prosafe'
  static_configs:
      - targets: ['switch1:eth0', '192.128.0.100:enp1s0', 'switch2:*'] # target switches by hostname:if_name.
  metrics_path: /probe
  relabel_configs:
    - source_labels: [__address__]
      target_label: __param_target
    - source_labels: [__param_target]
      target_label: instance
    - target_label: __address__
      replacement: 127.0.0.1:9493 # The prosafe_exporter's real hostname:port.

if_name 可以是 *。如果使用 *,prosafe_exporter将自动搜索可访问的网络接口。

查询示例

以下为 switch1:eth0port1 的发送数据速率。

rate(prosafe_transmit_bytes_total{instance="switch1:eth0", port="1"}[1m])

依赖关系

~18MB
~348K SLoC