
Um Exportador Prometheus para Suricata
Este é um Exporter Prometheus para o Suricata que usa dump-counters via
unix socket
para consultar métricas.
$ ./suricata_exporter -h
Usage of ./suricata_exporter:
-suricata.socket-path string
Path to the Suricata Command socket. (default "/var/run/suricata.socket")
-version
Output version information.
-web.listen-address string
Address to listen on (default ":9917")
-quiet
supress logging messages when suricata is not enabled
-totals
Export only the overall global total metrics instead of per-thread metrics. (default false)
Para verificar se o exporter está funcionando com a sua configuração do Suricata, use o seguinte comando para visualizar um subconjunto das métricas de captura.
$ curl -s localhost:9917/metrics | grep kernel_packets_total
# HELP suricata_capture_kernel_packets_total
# TYPE suricata_capture_kernel_packets_total counter
suricata_capture_kernel_packets_total{thread="W#01-eth1"} 7744
suricata_capture_kernel_packets_total{thread="W#02-eth1"} 8435
suricata_capture_kernel_packets_total{thread="W#03-eth1"} 7564
suricata_capture_kernel_packets_total{thread="W#04-eth1"} 9747
Agora você pode configurar um servidor Prometheus para coletar métricas do exporter do Suricata em intervalos regulares para posterior visualização e análise.
Atualmente produz métricas por thread para decoder, flow, flow_bypassed,
app_layer e tcp. As métricas de memuse são reportadas globalmente.
Desenvolvido para Suricata 6.0.4 e af-packet. A maioria das métricas suportadas é hard-coded.
Atualizado para Suricata 7.0.0, mas nem todas as métricas novas foram adicionadas.