
Monitoritzant latències amb Telegraf
Una cosa molt senzillesa i molt útil pot ser i conèixer la latència a diferents adreces IP, podem visualitzar en temps real, amb refresc de 1 segon, temps que triga a respondre les adreces IP, podran ser privades o públiques; per exemple, per conèixer si tenim problemes amb Internet i on estan, per exemple 🙂
Ya veréis qué rápido y sencillo! Supongo que todos tendremos ya instalado Influxdb y Grafana, cualquier duda tenemos este post inicial. Bo, pues desde cualquier máquina que tengra Telegraf instalado lo haremos en un minuto. Tendremos que decidir desde donde haremos los Ping para conocer su latencia, si tenemos dudas, la propia máquina de Influxdb puede tener el agente de Telegraf instalado y desde ahí haremos los Ping.
Editamos el fichero de Telegraf y en la sección de los Inputs bastará con añadir algo como esto, donde en el ejemplo vemos un Ping al DNS de Google y otro a una IP local de mi red, un router:
... [[inputs.ping]] urls = ["8.8.8.8"] # required count = 1 interface = "ens32" name_override = "ping_google" interval = "1s" [[inputs.ping]] urls = ["192.168.0.1"] # required count = 1 interface = "ens32" name_override = "ping_router_movistar" interval = "1s" ...
Recordar que si queremos con refresco de 1 segon, deberemos indicarlo en los parámetros ‘interval’ y ‘flush_interval’. Com sempre, després de tocar fitxer de configuració, reiniciamos el servicio de Telegraf y que lea la nueva config:
sudo systemctl restart telegraf
Y con esto y un bizcocho… tendremos ya los datos en Influxdb, así que lo siguiente será ir a Grafana! Allí ya tendremos configurado el Data Source contra este Influxdb, y lo siguiente será añadir un Panel en un Dashboard, contra dicho Data Source de Influxdb de tipo Flux y con esta query lo tendremos:
from(bucket: "Monitor") |> range(start: v.timeRangeStart) |> filter(fn: (r) => r._measurement == "ping_google" and r._field == "average_response_ms") |> aggregateWindow(every: v.windowPeriod, fn: mean)
¡Y zas! ¡lo tenemos! ¿Qué en un minuto? Precioso! ya tenemos un ejemplo de cómo visualizar en tiempo real latencias a distintas direcciones IP. Podrás dibujar dashboards con trazas, rutas y conocer donde está el cuello de botella, de manera inmediata o a modo de consulta histórica por supuesto.
Abrazos a todes, que así semos modernos… en fi, ara en seriós, cuidar-vos, agradeceros vuestras lecturas, ratitos, cuando le dais a los likes o compartir en las RRSS… en fi, gràcies!