はじめに
Syslogサーバーでのログ保存といえば、ルーターやスイッチなどのネットワーク機器ログ、ファイアウォールやUTMのトラフィックログ、各種サーバーのログが一般的です。
実際に弊社のEasyBlocks Syslogシリーズをご活用いただくケースも、UTMやネットワーク機器のログ保存が大多数です。
今回は趣向を変えて、IoT関連のデータ(温度・照度・湿度などのセンサー値)をSyslog形式でEasyBlocks Syslogに保存することを試してみました。
IoTデータをSyslogに保存するメリット
実際に設定を試す前に、IoTデータを他のログと同じSyslogサーバーに集約することのメリットを紹介します。
①一元的なログ収集基盤になる

通常のネットワーク機器ログとIoTデータを同じフォーマットでまとめて管理できます。ログ収集の仕組みを統一できるため、運用がシンプルになります。
②障害解析や相関分析に役立つ

例えば「サーバールームの温度上昇ログ」と「ルーターのインターフェースダウン」「サーバー再起動ログ」を時系列で並べることが可能です。
「温度が上がった → 機器が落ちた」といった因果関係を後から調べやすくなります。
可視化がなくても、生データとして残っていること自体に価値があります。
③将来のデータ活用の布石になる

現時点では単純にSyslogサーバーに蓄積するだけでも、将来的にはSIEMや他システムでの分析に活用できます。「とりあえず溜めておく」こと自体が意義のある運用になります。
早速、設定してみます。
今回構築するシステム構成や実際の設定について説明していきます。
システム構成
システム構成は以下の通りです。
IoTセンサーデバイス:オムロン環境センサー
IoTゲートウェイ:OpenBlocks IoT FX1
Syslogサーバー:EasyBlocks Syslogシリーズ
データ送信の設定
センサーデータの収集やOpenBlocks IoT FX1の各種設定は、以前の記事でZabbixサーバーへの送信・可視化を解説していますのでそちらを参考にしてください。
EasyBlocks Syslog へのデータ送信
Zabbixサーバーへの送信でも使用したNode-REDを活用し、EasyBlocks Syslogへの送信を追加しました。
全体のフローは以下のイメージです。

※Node-REDの内容に関しては動作を保証するものではありませんのでご注意ください
Functionノード
受信したpayloadの全項目をkey=value形式に変換し、Syslog形式に整形して送信します。

upd outノード
EasyBlocks SyslogのIPアドレスとポート番号を指定して送信。これだけでIoTデータをEasyBlocks Syslogに送信可能です。

最後に確認
EasyBlocks Syslog側のWEB UIでログを確認すると、以下のようにセンシングデータがkey=value形式のSyslogとして保存されていることが確認できます。

まとめ
今回のようにIoTデータをSyslogサーバーに保存することで、ネットワークログやサーバーログと同じ環境で統合管理できます。
IoTデータは通常、可視化や分析に使われますが、各種ログと一緒にSyslogに保存することで、後の解析や相関調査にも活用でき、将来的なデータ利活用の布石にもなります。
EasyBlocks Syslogシリーズの活用例として是非検討してみてください。