Eu tenho o Telegraf instalado em um servidor e ele contém a seguinte configuração de rede:
[[inputs.net]]
interfaces = ["eth0"]
Isso alimenta as seguintes métricas no InfluxDB:
bytes_recv , bytes_sent , drop_in , drop_out , err_in , err_out , icmp_inaddrmaskreps , icmp_inaddrmasks , icmp_incsumerrors , icmp_indestunreachs , icmp_inechoreps , icmp_inechos , icmp_inerrors , icmp_inmsgs , icmp_inparmprobs , icmp_inredirects , icmp_insrcquenchs , icmp_intimeexcds , icmp_intimestampreps , icmp_intimestamps , icmp_outaddrmaskreps , icmp_outaddrmasks , icmp_outdestunreachs , icmp_outechoreps , icmp_outechos , icmp_outerrors , icmp_outmsgs , icmp_outparmprobs , icmp_outredirects , icmp_outsrcquenchs , icmp_outtimeexcds , icmp_outtimestampreps , icmp_outtimestamps , ip_defaultttl , ip_forwarding , ip_forwdatagrams , ip_fragcreates , ip_fragfails , ip_fragoks , ip_inaddrerrors , ip_indelivers , ip_indiscards , ip_inhdrerrors , ip_inreceives , ip_inunknownprotos , ip_outdiscards , ip_outnoroutes , ip_outrequests , ip_reasmfails , ip_reasmoks , ip_reasmreqds , ip_reasmtimeout , packets_recv , packets_sent , tcp_activeopens , tcp_attemptfails , tcp_currestab , tcp_estabresets , tcp_incsumerrors , tcp_inerrs , tcp_insegs , tcp_maxconn , tcp_outrsts , tcp_outsegs , tcp_passiveopens , tcp_retranssegs , tcp_rtoalgorithm , tcp_rtomax , tcp_rtomin , udp_ignoredmulti , udp_incsumerrors , udp_indatagrams , udp_inerrors , udp_noports , udp_outdatagrams , udp_rcvbuferrors , udp_sndbuferrors , udplite_ignoredmulti , udplite_incsumerrors , udplite_indatagrams , udplite_inerrors , udplite_noports , udplite_outdatagrams , udplite_rcvbuferrors , udplite_sndbuferrors
Eu então criei um painel no Grafana com a seguinte consulta:
SELECT
derivative(sum("bytes_sent"), 1s) AS "up",,
derivative(sum("bytes_recv"), 1s) AS "down"
FROM
"autogen"."net"
WHERE
"interface" = 'eth0' AND
$timeFilter
GROUP BY
time($__interval)
fill(null)
(O derivative() é necessário, pois bytes_recv e bytes_sent estão acumulando métricas.)
Minha preocupação é que os dados não sejam precisos. Como teste, baixei alguns arquivos muito grandes (1 GB) e confirmei ( ifconfig eth0 ) que RX bytes estava aumentando pela quantidade esperada conforme os dados foram recebidos. No entanto, o gráfico se parece com isto:
Não há alteração alguma nas métricas registradas. O que estou fazendo errado?
Detalhes
- O host está executando o Ubuntu Server 16.04
- Telegraf, InfluxDB e Grafana estão sendo executados no Docker