使用SNMP的Grafana中的每日下载计数器

时间:2018-10-16 09:08:45

标签: snmp grafana influxdb

我想使用带有InfluxDB和telegraf(snmp)的Grafana来监视Cisco ASA上特定接口上的每日传入流量。

我正在使用以下查询从我的图形的ASA获取当前数据:

SELECT derivative(mean("ifHCInOctets"), 1s) *8 AS "In", derivative(mean("ifHCOutOctets"), 1s) *8 AS "Out" FROM "snmp" WHERE ("hostname" = 'asa-01' AND "ifName" = 'WAN') AND $timeFilter GROUP BY time($__interval), "ifName" fill(null)

我如何重建此查询以在singlestat模块中获得每日(在0:00h重置)下载率?类似于“今天我们下载了:X Gb”。

我尝试过:

SELECT DIFFERENCE(LAST("ifHCInOctets")) FROM "snmp" WHERE ("hostname" = 'asa-01' AND "ifName" = 'WAN') AND $timeFilter GROUP BY time($interval)

但是我不知道如何获得适当的时间段,我不确定是表示此数据的好单位还是应该将结果乘以8?

或者也许有更好的方法或不同的OID来测量此类数据?

1 个答案:

答案 0 :(得分:1)

尝试SPREAD function并在InfluxDB级别上进行计算:

SELECT 
  SPREAD("ifHCInOctets")*8 AS "In", 
  SPREAD("ifHCOutOctets")*8 AS "Out" 
FROM "snmp" 
WHERE 
  "hostname" = 'asa-01' AND "ifName" = 'WAN' AND $timeFilter

在单个统计信息面板中覆盖相对时间(now/d),并显示当前值。