ログエクスプローラ
Data Infrastructure Insightsのログエクスプローラは、システムログを照会するための強力なツールです。検査に役立つだけでなく、ログクエリーをモニタに保存して、特定のログトリガーがアクティブになったときにアラートを生成することもできます。
ログの検索を開始するには、*[Log Queries]>[+New Log Query]*をクリックします。
リストから使用可能なログを選択します。
クエリに使用できるログの種類は環境によって異なります。ログタイプは、時間が経過すると追加される場合があります。 |
フィルタを設定して、クエリの結果をさらに絞り込むことができます。たとえば、障害を示すすべてのログ・メッセージを検索するには、「 failed 」という単語を含む Messages のフィルタを設定します。
フィルタフィールドには、必要なテキストの入力を開始できます。Data Infrastructure Insightsでは、入力時に文字列を含むワイルドカード検索を作成するよう求められます。 |
結果は、表示される各期間のログインスタンスの数を示すグラフに表示されます。グラフの下には、自分のログエントリが表示されます。グラフとエントリは、選択した期間に基づいて自動的に更新されます。
フィルタリング
含める/除外する
ログをフィルタリングするときは、入力した文字列を*含める*(「フィルタする」など)または*除外*にすることができます。除外された文字列は、完了したフィルタに「Not <string>」と表示されます。
ワイルドカードまたは式に基づくフィルタ(例 フィルタフィールドに濃い青で表示されます。リストから直接選択した項目は、水色で表示されます。
[ ログモニタの作成 ] をクリックすると、現在のフィルタに基づいて新しいモニタを作成できます。 |
高度なフィルタリング
クエリやダッシュボードウィジェットでテキストやリストの値をフィルタする場合、入力を開始すると、現在のテキストに基づいて * ワイルドカードフィルタ * を作成するオプションが表示されます。このオプションを選択すると、ワイルドカード式に一致するすべての結果が返されます。NOT、AND、ORを使用して式を作成することもできます。また、[None]オプションを選択してnull値をフィルタリングすることもできます。
フィルタリングを構築するときは、クエリを早期に頻繁に保存するようにしてください。高度なクエリは「自由形式」の文字列エントリであり、ビルド中に解析ミスが発生する可能性があります。 |
この画面の画像を見てください。この画像は、_logs.kubernetes.event_logの高度なクエリのフィルタリングされた結果を示しています。このページでは多くのことが行われています。これについては、画像の下で説明します。
画面の説明"]
-
この高度なクエリー文字列フィルタは、次の項目に対して適用されます。
-
「failed」という単語を含む_reason_のログエントリをフィルタリングしますが、特定の理由が「FailedMount」のログエントリはフィルタリングしません。
-
「monitoring」という単語を含む_metadata.namespace_を含むエントリのいずれかを含めますが、「cm-monitoring」または「eg-monitoring」の特定の名前空間は除外します。
上記の場合、"cm-monitoring"と"eg-monitoring"の両方にダッシュが含まれているため、文字列を二重引用符で囲む必要があります。そうしないと、解析エラーが表示されます。ダッシュ、スペースなどを含まない文字列は、引用符で囲む必要はありません。疑わしい場合は、文字列を引用符で囲みます。
-
-
現在のフィルタの結果([Filter By]の値や[Advanced Query]のフィルタなど)が結果リストに表示されます。リストは、表示されている任意の列でソートできます。追加の列を表示するには、「歯車」アイコンを選択します。
-
グラフが拡大され、特定の期間内に発生したログ結果のみが表示されるようになりました。ここに表示されている時間範囲は、現在のズームレベルを反映しています。[Reset Zoom]ボタンを選択して、ズームレベルを現在のData Infrastructure Insightsの時間範囲に戻します。
-
グラフの結果は、_source_fieldでグループ化されています。グラフには、各列の結果が色別にグループ化されて表示されます。グラフの列にカーソルを合わせると、特定のエントリに関する詳細が表示されます。
フィルタの調整
次の方法でフィルタを絞り込むことができます。
フィルタ |
機能 |
* (アスタリスク) |
すべての項目を検索できます |
? (疑問符) |
では、特定の数の文字を検索できます |
または |
複数のエンティティを指定できます |
ありません |
検索結果からテキストを除外できます |
_ なし _ |
すべてのフィールドで NULL 値を検索します |
NOT * |
_text-only_fields 内の NULL 値を検索します |
フィルタ文字列を二重引用符で囲むと、 Insight では、最初と最後の引用符の間のすべての部分が完全に一致するものとして扱われます。引用符内の特殊文字または演算子は、リテラルとして扱われます。たとえば、「 * 」を指定した場合、リテラルアスタリスクである結果は返されますが、アスタリスクはワイルドカードとして扱われません。演算子 OR および NOT は、二重引用符で囲まれた場合にもリテラル文字列として扱われます。
単純なフィルタと高度なクエリフィルタを組み合わせることができます。結果のフィルタは、2つのうちの「AND」になります。
グラフの凡例
グラフの下の_凡例_にもいくつかの驚きがあります。凡例に表示される結果ごとに(現在のフィルタに基づいて)、その行の結果のみを表示するオプション(フィルタの追加)、またはその行以外の結果を表示するオプション(除外フィルタの追加)があります。グラフと[ログエントリ]リストが更新され、選択した結果が表示されます。このフィルタリングを削除するには、凡例をもう一度開き、[X]を選択して凡例ベースのフィルタをクリアします。
が表示されているAdvanced Queryの凡例"]
ログの詳細
リスト内のログエントリの任意の場所をクリックすると、そのエントリの詳細ペインが開きます。ここでは、イベントに関する詳細を確認できます。
[ フィルタの追加 ] をクリックして、選択したフィールドを現在のフィルタに追加します。ログエントリリストは、新しいフィルタに基づいて更新されます。
一部のフィールドはフィルタとして追加できません。その場合、_Add Filter_アイコンは使用できません。
トラブルシューティング
ここでは、ログクエリに関する問題のトラブルシューティング方法を説明します。
* 問題: * |
* これを試みなさい : * |
ログクエリに「デバッグ」メッセージが表示されません |
デバッグログのメッセージが収集されません。必要なメッセージをキャプチャするには、関連するメッセージの重大度を _INFORMATIONAL 、 ERROR 、 ALERT 、 EMERGENCY 、 _OR_NOTICE レベルに変更します。 |