Datadog logs に NW 機器のログを集めて parse してみた

Datadog × ネットワークに関する発表を先日してきたのでそのついでに投稿

Datadog logs 使うのはいいけど、メニュー画面ぽちぽちしながら絞りこみとかしたいですよね。 parser 探してみたけど意外とすんなり見つからなくて適当に作りました。

DHCP サーバでをサンプルにやってみる

以下のようにサンプルを見ながら parse することが可能です。 Grok というライブラリを使った parser です。基礎を全く知らずに書いているので汚いかもです・・・。

とりあえず dhcpd のログを。こんな感じです。

Jun 12 12:12:12 DHCP-SV01 dhcpd: DHCPACK on 192.168.1.11 to 12:34:56:78:9a:bc (WIN11111) via 192.168.1.254


DHCP_ACK %{date("MMM dd HH:mm:ss"):date} %{notSpace:hostname} dhcpd: DHCPACK on %{ip:client_ip} to %{mac:mac-address} %{data:pc_name} via.*

まずは、どれが何を意味しているのか解釈できるようになりました。 あとfact 作ります。parse したログから以下のように作成できます。

f:id:komeiy:20190701203528p:plain

すると以下のようにGUIの左側でポチポチできるようになります。

f:id:komeiy:20190703094143p:plain

MMM dd のところは、ログの出力元によっては、MMM d みたいなケースがあるので両方対応できるようにする必要もあります。

Cisco 機器のログ

syslog については、以下で parse してみました。 facility-severity-MNEMONICのところがなんて表現していいのかわらかなかったので Cisco のマニュアルの表現から拝借。

syslog %{date("MMM dd HH:mm:ss", "Asia/Tokyo"):date} %{notSpace:hostname}.* %{notSpace:facility-severity-MNEMONIC}: %{data:message}

もともと検索性は高いと思うのですが、monitori を設定するときなどに便利なのかなと思います。


シェアして頂けると嬉しいです。
参考になったという方がいれば是非お願いしますm(_ _ )m
モチベーション維持の観点で非常に励みになります。

[改訂3版]Zabbix統合監視実践入門 ──障害通知、傾向分析、可視化による省力運用

[改訂3版]Zabbix統合監視実践入門 ──障害通知、傾向分析、可視化による省力運用