コンテキストクエリ

最終更新日: Oct 13, 2017

ログファイルを展開すると、各ログにイベントが記録されます。ログとそれに対応するイベントは関連してあり、いくつかの連続したログを使用して、イベントシーケンス全体の特定のプロセスをレビューすることができます。

ログコンテキストクエリは、ログソース(マシン+ファイル)とそのログを指定し、元のファイル内のこのログの前と後(テキストの前後)の特定のレコード数を検索します。これにより、DevOps シナリオの下で、問題の原因を明らかにする簡単な方法と、それを修正する方法が提供されます。

ログサービスコンソールには、クエリ用の特定のページが用意されています。ブラウザを使用して、元のログファイルのページをめくるのと同様に、指定したログの元のファイルのコンテキスト情報を表示できます。

シナリオ

たとえば、O2O テイクアウト Web サイトでは、サーバー上のプログラムログに注文のトランザクショントラックが記録されます。

ユーザログイン> 商品を閲覧 > 商品をクリック > 買い物カゴに追加 > 注文 > 注文の支払 > 支払方法からの引き落し > 注文完了

注文を行うことができない場合、運営責任者と顧客サービス担当者は、問題の原因をすばやく突き止めなければなりません。従来のコンテキストクエリでは、管理者は関連するメンバにマシンログイン許可を追加し、次にアプリケーションが展開される各コンピュータにログインし、注文 ID をキーワードとして使用してアプリケーションログファイルを検索します。

ログサービスコンテキストクエリでは、ログサービスを使用してこの機能を次のように実装できます。

  1. ログ収集クライアント Logtail をサーバーにインストールし、マシングループとログ収集構成をコンソールに追加します。その後、Logtail はインクリメンタルログのアップロードを開始します。
  2. ログサービスのコンソールログクエリページにアクセスし、時間範囲を指定し、注文 ID に従って注文エラーログを検索します。
  3. 見つかったエラーログを他の関連するログ情報が見つかるまで(たとえば、クレジットカード支払が失敗するまで)ベンチマークとしてページアップします。

1

利点

  • アプリケーションへの接続はなく、ログファイル形式を変更する必要はありません。
  • 任意のマシンとファイルの指定されたログコンテキスト情報はログサービスコンソールで表示でき、ログファイルを表示するために各マシンにログインする際の問題を回避できます。
  • イベント発生の時間キューと組み合わせて、ログサービスコンソールの指定された時間セグメントの疑わしいログが見つかった後にコンテキストクエリが実行された場合、常に半分の労力で 2 倍の結果が得られます。
  • サーバーストレージまたはログファイルのローテーションが不十分なためにデータ損失がゼロになり、いつでもログサービスコンソールで履歴データを表示できます。

前提条件

手順

  1. ログサービスコンソールにログインします。

  2. プロジェクトを選択し、プロジェクト名をクリックします。

  3. [ログストアリスト] ページで、ログストアを選択し、ログ検索列の [検索] をクリックします。
    クエリ結果ページで返されるログの左側に [コンテキストビュー] アイコンがある場合、これはログがコンテキストクエリ機能をサポートしていることを示します。

    1

  4. ログを選択し、[コンテキストビュー]をクリックします。
    これにより、コンソールが共通検索モードからコンテキストクエリモードに切り替わります。

    3

  5. スクロールして、選択したログのコンテキスト情報を表示します。拡張情報を表示する必要がある場合は、前の結果と後の結果をそれぞれ [古い] または [新しい] をクリックします。