
Explotant la visualització d'Elasticsearch a Grafana amb Taula
En aquest document vam explotar la visualització de les dades que recopila el nostre Elasticsearch, per acabar veient-los com no, a Grafana. Farem en futurs posts altres tipus diferents de visualització molt molons per comprendre què passa a la nostra xarxa, avui toca format Taula.
La idea és que a Elasticsearch estem emmagatzemant dades interessants de la nostra xarxa, particularment el fem servir com a recol·lector de diferents tipus de registres, logs… de diferents tipus, siguin de firewall, d' un Apache, d' un IIS, d' un Suricata… els esdeveniments d'un Windows…
Si vols treure alguna idea: En aquest ja vam veure com instal·lar Suricata, un IDS i IPS completíssim i open source; en aquest altre ja vam veure com instal·lar Filebeat a Suricata per redirigir & recopilar els LOGs al nostre Elasticsearch, y, a més vam veure un parell de visualitzacions genèriques amb Grafana. En aquest altre document vam veure com recopilar mètriques de Windows i en aquest altre recopilem els esdeveniments del Visor d'Esdeveniments. Tindrem dins de poc més documents de com recopilar LOGs de Fortigate, d' un Directori Actiu, de MySQL, SQL…
Bé, i per a què volem una taula? Doncs per fer les nostres taules personalitzades amb els camps que ens interessin veure, el mateix que podem visualitzar des de Kibana quan descobrim i fem servir consultes de tipus Lucene, doncs això mateix però a Grafana, simplificant certes dades que necessiti algun company, podem pintar els valors…
Una taula que puguem fer servir per consultar (amb històric o en temps real, al gust) qui connecta amb qui a la nostra xarxa, per visualitzar connexions, trànsit de xarxa, esdeveniments…
El problema ve ja que a Grafana 7.x el panell de tipus Taula no porta l'opció de “Table Transform” on ens deixa triar els camps que volem visualitzar, i això a Grafana 5.x i 6.x funcionava així de bé. Ara hem de fer una nyapilla, crearem un Panell en un Dashboard, y:
1. Seleccionem de visualització “Table”,
2. Elegim el DataSource (Elastic-Filebeat en el meu cas)
- Query: Posem la consulta que volem visualitzar en el meu exemple, tots els logs d'Apache del meu equip DIOS: “event.module:apache AND host.hostname: déu”
- Metric: Seleccionem “Raw Document”
I apliquem els canvis amb “Apply”,
Seleccionem el Panell que acabem de crear > “Inspect” > “Panell JSON”. I aquí:
- Buscarem: “type”: “table”,
- El substituïm per: “type”: “table-old”,
I apliquem els canvis des de “Apply”,
I ja tindrem en “Options” part de “Table Transformation”, seleccionem “JSON Data” i individualment cada camp que vulguem visualitzar, a més d' en “Column Styles” poder renovar cada columna i el seu format, així com pintar valors.
I després el bo també, és que podrem filtrar per les dades que visualitzem a la mateixa taula, seleccionant alguna dada podrem filtrar-lo, o a la part esquerra superior disposem un camp on podrem fer si ens interessa filtres sobre les dades visualitzades, en aquest exemple poseu “source.ip” i una IP que vull saber quant i a què connecta, en aquest cas el que visualitzem són LOGs d'un Apache.
I res, ací tenim la taula amb els camps i filtres que ens interessi autorefrescant les dades.