Я хочу отслеживать ежедневный входящий трафик на определенном интерфейсе на моем Cisco ASA, используя Grafana с InfluxDB и telegraf (snmp).
Я использую следующий запрос, чтобы получить текущие данные из 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)
Как я могу перестроить этот запрос, чтобы получить ежедневную (сбрасываемую в 0:00) скорость загрузки в модуле singlestat? Что-то вроде «Сегодня скачали: X Gb».
Я пытался:
SELECT DIFFERENCE(LAST("ifHCInOctets")) FROM "snmp" WHERE ("hostname" = 'asa-01' AND "ifName" = 'WAN') AND $timeFilter GROUP BY time($interval)
Но я не знаю, как получить правильный период времени, и я не уверен, является ли биты хорошей единицей для представления этих данных или мне следует умножить результат на 8?
Или, может быть, есть лучший способ или другой OID для измерения таких данных?
Попробуйте Функция РАСПРОСТРАНЕНИЕ и рассчитайте его на уровне 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
) на панели одиночных статистических данных и отобразить текущее значение.