Y2Sログ監視ツール『m2stream』の紹介



1.はじめに
2.m2stream
  2.1.m2streamとは
  2.2.特徴
3.基本構成
4.動作確認
  4.1.Windows編(テキストログ)
  4.2.Windows編(テキストログ+検知時間指定)
  4.3.Windows編(イベントログ)
  4.4.Linux編(テキストログ)
5.まとめ

1.はじめに

みなさん、ログ監視はおこなっていますか?
はじめまして、入社3年目のHです。
ログ監視とは機器上の挙動を記録したもの(ログ)を監視しています。
ログの中には「販売サイトにアクセスができない」、「サーバとの通信が取れない」のように対処を後回しにすると社外への影響、損害が発生するようなエラーもあります。
日々大量に発生するログの中から業務やお客様へ影響があるものを検知することで、いち早く障害やパフォーマンスの低下の際に対応することができます。このようなログの監視はクラウドではAzure MonitorやAmazon CloudWatch、オンプレミスではswatch等を耳にします。
上記のツールでログ監視を実施することは可能です。しかし、対象文字列やメール送信を希望通りの設定にしたい!でも細かい設定ができない…そんなことがあるかと思います。
そのようなお悩みを解決するため、弊社では自社開発のm2streamというログ監視ツールを提供しております。本記事ではm2streamについてご紹介しつつ、実際に動作を確認してみます。

2.m2stream

2.1.m2streamとは

m2streamは弊社で開発したログ監視ツールです。
監視対象サーバのログ、イベントを検出、フィルタ処理や加工処理を行いながらログ情報を
特定のユーザに転送します。
リアルタイムでログの追記、監視を実施するため、バックグラウンドタスクとして実行されます。

m2streamの検知対象は以下のログです。
 ・イベントログ(Windows)
 Windowsのイベントログをチェックし、設定したフィルタに従い通知を行います。

 ・テキストログ(Windows)
 Windowsのテキストファイルをチェックし、設定したフィルタに従い通知を行います。
 ・テキストログ(Linux)
 監視対象サーバの指定したファイルのログ情報の文字列をチェック、設定したフィルタに従い
 通知を行います。

2.2.特徴

m2streamには以下の特徴があります。
 検知、除外設定
 ・複雑な条件設定が可能
  例)複数ファイルを、それぞれ別の条件で監視、通知間隔の複数設定等
 ・特定の条件の場合、通知メール本文に任意の文字列を置き換えて出力
  →監視のみを別業者に依頼している場合、パスワード等の機密情報を通知メール内容に
   載せないことが可能
 ・監視対象ファイルの複数指定

 時間設定
 ・監視設定ごとに特定の時間帯のみ監視の実施、通知停止が可能
  例)休日のみ、平日の勤務時間のみ等の設定
 ・一定間隔の通知可能
  例)5分毎の通知
  →定期的にプロンプトを実行するため、死活監視として利用することも可能
 ・ログの集計設定を指定
  例)同一エラーを5件検知時にメール送信
  →メールの送信数を減らし、必要なアラートを見逃す等のインシデントを防ぐ

 メール設定
 ・アラート対象の全文報告
  →エラー原因の切り分け簡略化が可能
   (アラート発生時に機器にログインしてログを確認する必要がない)
 ・通知メールのフォーマット指定
 ・メール件名や差出人、宛先、メールサーバ等、通知の設定
  →上記内容をまとめることも可能
 ・m2stream同士で連携可能(複数サーバーのログを集約できる)
  例)複数の監視対象に同一条件を設けたい場合はここで設定、集約する

3.基本構成

監視ツールm2streamは以下ファイルにて構成されています。
 ・m2streamの実行ファイル
 ・m2streamの設定ファイル
 ・マニフェストファイル(Windows環境のみ)

本ブログでは上に記載されているファイルを用いてWindows環境では「C:\Program Files」、
Linux環境では「./usr/local」配下へm2stream用にフォルダを作成し動作確認しています。

4.動作確認

検知文字列をそれぞれ設定して、実際に送信されるメールを確認します。

今回の設定内容一部

項目内容
①監視対象のファイルデスクトップ上のテストファイル
②メール内での監視対象ファイル名任意
③検知文字列の条件任意設定(正規表現可)
④検知or除外一致した際のメール送信の有無
⑤送信元任意
⑥宛先任意
⑦メール本文の内容任意(デフォルトでは検知文字列を含む全文)

今回は設定しておりませんが、CCやBCC追加はもちろん同一のエラーを一定回数検知したらメールを送信する等、細かい条件設定も可能です。

4.1.Windows編(テキストログ)

設定ファイルに検知条件を設定していきます。
今回は検知文字列を「Error」に設定してみます。

③検知文字列の条件「Error」を含む文字列

サービスを再起動後、設定ファイルを適用して監視対象のファイルに追記します。

無事に検知されて以下のような内容のメールが届きました!

4.2.Windows編(テキストログ+検知時間指定)

検知の時間指定を追加してみます。
4.1での検知条件に加えて、平日の10:00~18:00の間だけ検知するように設定してみます。

③検知文字列の条件1「Error」を含む文字列
③検知文字列の条件2時間が平日の10:00~18:00

該当時間外に監視対象ファイルに検知対象文字列を追記して、メールが届かないことを確認します。

リアルタイムで検知をする設定のため、10時前の対象文字列が検知されていないことが確認できます。

4.3.Windows編(イベントログ)

設定ファイルに検知文字列の条件や監視対象のファイルを設定します。
今度は検知文字列を「ID:150」にしてみます。

③検知文字列の条件「ID:150」を含むイベントログ

設定が完了したので、サービスを再起動して設定ファイルを適用後、手動で「ID:150」と「ID:1502」のエラーを発生させます。

「ID:150」のエラーを検知したメールだけが届きました!

4.4.Linux編(テキストログ)

設定~テストまでの流れはWindowsのテキストログの検知と同じです。
「error」を検知文字列で確認します。

③検知文字列の条件「error」を含む文字列

監視対象ファイルにテストメッセージを追記します。

検知されてメールが届きました!

5.まとめ

ログ監視はサイバーセキュリティやシステムのパフォーマンス向上に不可欠です。
適切な監視手段を用いることで、膨大なデータから有益な情報を抽出し、迅速な対応が可能です。
今回は弊社のログ監視ツールm2streamについて、簡単な条件でのエラーメールのテストとともにご紹介いたしました。導入は容易でお客様要件に合わせ柔軟な設定も可能なため、ログ監視にお悩みをお持ちの方、是非Y2Sにご相談ください。