
Suricata用のPrometheus Exporter
これは、dump-counters を使用して UNIX ソケット 経由でメトリクスを照会する、Suricata 用の Prometheus エクスポーターです。
$ ./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)
エクスポーターが Suricata セットアップで正しく動作していることを確認するには、次のコマンドを使用してキャプチャメトリクスの一部を確認します。
$ 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
これで、Prometheus サーバー を設定して、Suricata エクスポーターを定期的にスクレイピングし、後で可視化および分析できるようになります。
現在、decoder、flow、flow_bypassed、app_layer、tcp のスレッド単位のメトリクスを生成します。memuse のメトリクスはグローバルに報告されます。
Suricata 6.0.4 および af-packet を対象に開発されました。サポートされているメトリクスのほとんどはハードコードされています。
Suricata 7.0.0 向けに更新されていますが、すべての新しいメトリクスが追加されているわけではありません。