皆さま、こんにちは!y.takanashiです。
相変わらず暑い日が続いていますね。
今回はログ・アナリティクスに転送したログを詳しく分析する方法についてご紹介します。
目次
今回やりたいこと
エラー等のイベントが発生した場合、OCIの各サービス(サーバやWAF、ロード・バランサ等)はログを生成し、それらのログを分析することで問題の特定や解決に役立ちます。
OCIではログを転送して分析する際、「ログ・アナリティクス」を使用することができます。
ログ・アナリティクスを使用することでログをグラフィカルに表示し、分析を容易にして問題の特定や傾向の把握がより効率的に行えます。
そこで、今回はログ・アナリティクスを使用してログを詳しく分析する方法についてご紹介いたします。
なお、ログ・アナリティクスに各種ログを転送する方法については、以下の記事をご覧ください。
Cloudiiブログ - 「【Oracle Cloud】ログ・アナリティクスに各種ログを転送する」
ログの分析
ログ・アナリティクスに転送されたログを確認
ここでは監査ログを例にして、ログ・アナリティクスに転送されたログの分析方法についてご紹介いたします。
OCIコンソール画面のナビゲーションメニューから「監視および管理」→「ログ・エクスプローラ」を選択すると、ログ・アナリティクスの詳細画面が表示されます。
ログ・アナリティクスからログの詳細を確認する場合、対象ログ(ここでは「OCI Audit Logs」)から「ドリル・ダウン」を選択します。
選択後、対象ログの詳細画面が表示されます。
対象ログ本文にある「詳細」から、生ログもしくはJSON形式でログを表示することができます。
同様に対象ログの本文の「▶︎」を選択することで、ログをフィールド毎に整理して表示することができます。
ログの表示形式を変更
ログの表示期間を変更する場合は、以下の赤枠から変更することができます。
(デフォルトでは過去14日までの表示ですが、「カスタム」から14日目以降のログを表示することも可能です。)
ログの表示形式を変更する場合は「ビジュアライゼーション」から変更することができます。
ここでは「円グラフ」→「ヒストグラム付き表」に変更して表示しています。
なお、表示形式によっては不要なフィールドが含まれる場合があります。
この場合、以下の赤枠から不要なフィールドを削除することができます。
同様に「フィールド」から表示したい項目を追加できます。
ここでは「Method」からGETメソッドを選択して、指定期間内のGETメソッドが含まれた監査ログを表示しています。
「アクション」から検索条件を保存
このように表示形式やフィールドを変更することで、ログを自分の好みに合わせて分析することができます。
しかし、継続してログの分析を行う場合、毎回同じ設定をするのは手間となります。
そこで「検索の保存」を使用することで、初期設定を行った後は設定を再度行う必要なく、継続的に自分の好みに合わせてログを分析することができます。
保存したいログの検索条件を表示後、右上の「アクション」から「名前をつけて保存」を選択します。
検索名(ここでは「TestSearch」)と検索の説明(任意)を入力、「保存」を選択します。
保存した検索条件は「アクション」→「開く」から表示することができます。
(検索条件を変更後、検索名が「ログ・エクスプローラ」→検索名(ここでは「TestSearch」)に変更されているのがわかります。)
また、保存時に「ダッシュボードに追加」を選択することで、検索条件をダッシュボード一覧に保存することができます。
(ダッシュボードについて「ダッシュボードを使用したログの分析」で詳しくご紹介いたします。)
上記以外にも、ログ・アナリティクスの管理画面の「保存済検索」から検索条件を表示することもできます。
他にも「アクション」では以下の機能を使用することができます。
- エクスポート
- 問い合わせURLのコピー
- 検出ルールの作成
「エクスポート」を使用することで検索条件をCSVもしくはJSON形式で自端末に保存することができます。
「問い合わせURLのコピー」は、検索条件のURLをコピーする機能です。
URLをペーストすることで同じ検索条件のログを確認することができます。
「検出ルールの作成」は、保存した検索条件の問い合わせを定期的に実行し、その結果をOCIの「モニタリング」に連携する機能です。
※検出ルールの詳細については以下のドキュメントをご覧ください。
OCI公式ドキュメント - 「検出ルールを使用したイベントおよびアラートの取得」
ダッシュボードを使用したログの分析
ログ・アナリティクスには「ダッシュボード」という機能があり、ダッシュボードを使用することで複数のグラフをまとめて一元的に表示させることができます。
ここでは「ダッシュボード」を使用したログの分析方法についてご紹介いたします。
OCIコンソール画面のナビゲーションメニューの「監視および管理」→ログ・アナリティクス内の「ダッシュボード」を選択します。
「Create Dashboard」からダッシュボード名(ここでは「TestBoard」)と説明(任意)を入力後、「Save changes」を選択します。
作成後ダッシュボード一覧に、作成したダッシュボードが追加されます。
ダッシュボードにログを追加する場合、検索条件の「アクション」→「名前を付けて保存」を選択します。
以下の項目を入力後、「保存」を選択します。
- 検索名(ここでは「TestSearch」)
- 検索の説明(オプション)
- ダッシュボードの選択
保存した後ダッシュボードの詳細画面に、保存した検索条件が追加されています。
ここからは、ダッシュボードの詳しい使い方についてご紹介します。
ダッシュボードに保存されたログの右上のアイコンを選択することで、ログの詳細を確認することができます。
同様に右下のアイコンから、検索条件のクエリを表示することができます。
またダッシュボードにもログ・エクスプローラと同様に「Actions」というメニューがあり様々な操作を行うことができます。
「Actions」から「Edit」を選択することで、ダッシュボードの詳細画面を編集することができます。
「Export」を選択することで、ダッシュボードをJSON形式で自端末に保存することができます。
「Auto refresh」からログを定期的(1分・5分・15分)に更新する間隔を選択することができます。
※デフォルトは「Auto refresh Off」となっており、ユーザーが手動で更新する必要があります。
ダッシュボードの詳細については以上となります。
クラスタ分析でログを分析する
最後に、クラスタ分析を使用したログの分析方法についてご紹介します。
クラスタ分析は、膨大な数のログの中から「無視してよい大量のログ」や「重要な一行のログ」を瞬時に判断し、類似したパターンを持つログ毎にグループ化を行います。
これにより、膨大なログイベントを少数のグループにまとめることができ、迅速なトラブルシューティングや異常検出を行うことができます。
クラスタ分析を使用する場合、ログ・エクスプローラの「ビジュアライゼーション」から以下のアイコンを選択します。
選択後、類似した特徴を持つログ・グループが「クラスタ」に一覧表示されます。
ここでは401個のクラスタが表示されていますが、この場合似たようなメッセージを認識してグループ分けを行い、401通りのパターンに自動集約して表示しています。
ログの「Count」の数字を選択した場合、同じ種類のログ一覧が表示されます。
クラスタ分析は、上記のクラスタも含めて以下のタブが用意されております。
- クラスタ
- 潜在的な問題
- 外れ値
- トレンド
「潜在的な問題」はクラスタの中で"fatal"、 "fault"など問題が起きていそうなパターンを自動認識して表示しています。
「外れ値」は特定期間中に一度だけ発生し、クラスタに含まれなかったレコードを表示しています。
実際に外れ値内に表示されているログのCountがすべて「1」となっています。
「トレンド」はログのトレンド(傾向を)分析し、トレンドごとにクラスタを表示しています。
「類似したトレンド」を選択すると、ほぼ同じ時間帯に発生したクラスタ一覧が表示されます。
クラスタ分析の詳細については以上となります。
まとめ
今回はログ・アナリティクスの詳細についてご紹介いたしました。
ログ・アナリティクスにログを転送し、表示形式の変更やダッシュボードを利用することにより、ログの分析が容易になり、トラブルシューティングや問題解決をより効率的に行うことができます。
さらにクラスタ分析を使用することで、似た傾向を持つ他のログと比較しながら、より詳細な分析を行うことができます。
最後に、ここで紹介した機能はログ・アナリティクス内の一部の機能のみ扱っておりますので、更なる詳細については以下のドキュメントをご覧いただければと思います。
OCI公式ドキュメント - 「ログ・アナリティクスについて」
以上となります。
この記事を通じて読者の皆様の問題解決の一助となれば幸いです。
最後まで読んで頂き、ありがとうございましたm(_ _)m