このドキュメントでは、Google Cloud コンソールのログ エクスプローラの概要について説明します。これは、ログバケットに保存されているログエントリの取得、表示、分析に使用できます。個々のログエントリと一連のログエントリを表示して分析すると、問題のトラブルシューティングに役立ちます。Logging API と Google Cloud CLI を使用して、ログデータを読み取ることもできます。
特定のパターンを含むログエントリの数をカウントするなど、ログエントリに対して集約オペレーションを実行するには、ログ分析を使用するようにログバケットをアップグレードし、Google Cloud コンソールのログ分析ページからクエリを実行します。ログ エクスプローラを使用して、Log Analytics を使用するようにアップグレードされたログバケット内のログを引き続き表示できます。さらに詳しいことついては、ログ分析の概要をご覧ください。
このドキュメントの残りの部分では、ログ エクスプローラの使用方法について説明します。
始める前に
ログ エクスプローラを使用してログエントリを表示するために必要な権限を取得するには、次の IAM ロールを付与するよう管理者に依頼してください。
-
_Required
バケットのログエントリと、_Default
バケットの_Default
ビューのログエントリを表示する、またはログスコープを選択するには: プロジェクト、フォルダ、または組織に対するログ閲覧者 (roles/logging.viewer
)。 -
_Required
バケットと_Default
バケットのすべてのログエントリを表示するには:プロジェクト、フォルダ、組織に対するプライベート ログ閲覧者 (roles/logging.privateLogViewer
)。 -
ログバケット内の制限付き
LogEntry
フィールドを表示するには: ログバケットを保存するプロジェクト、フォルダ、または組織に対するログフィールド アクセサー (roles/logging.fieldAccessor
)。LogEntry
フィールドへのアクセスを制限する方法については、フィールド レベルのアクセスを構成するをご覧ください。 -
ログバケットのログビューに保存されているログエントリを表示してダウンロードするには、ログバケットを含むプロジェクト、フォルダ、または組織に対するログビュー アクセサー (
roles/logging.viewAccessor
)が必要です。特定のログビューへのアクセス権を付与する方法については、ログビューへのアクセスを制御するをご覧ください。
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
始める
ログ エクスプローラの使用を開始するには、次のようにします。
-
Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Logging] の結果を選択します。
Google Cloud プロジェクト、フォルダ、または組織を選択します。
[ログ エクスプローラ] ページに表示されるログエントリは、次の要素によって異なります。
- ログエントリを検索したリソース。
- 期間の設定。
- 検索対象リソースに対する Identity and Access Management(IAM)ロール。
- クエリによって検索結果がフィルタされます。たとえば、クエリ
severity>=ERROR
を追加すると、重大度がERROR
以上のログエントリのみが表示されます。
デフォルトでは、[ログ エクスプローラ] ページは、デフォルトのログスコープにリストされているリソースでログエントリを検索します。そのスコープにアクセスできない場合は、選択したプロジェクト、フォルダ、または組織に由来するログエントリが検索されます。プロジェクトを選択すると、検索結果には、別のプロジェクトのシンクによってプロジェクトに転送され、その後ログバケットに保存されるログエントリが含まれます。
[ログ エクスプローラ] ページが開いたら、ログ エクスプローラでログエントリの検索対象リソースを選択できます。[範囲を絞り込む] メニューを使用して行った変更は、現在のセッションにのみ適用されます。
ログ エクスプローラのインターフェース
ログ エクスプローラのインターフェースでは、ログエントリの表示、解析、分析、クエリ パラメータの指定を行うことができます。ログ エクスプローラには次のセクションがあります。このページで詳しく説明します。
メインツールバー
メインツールバーを使用すると、次のことができます。
- menu_book クエリ ライブラリ: 保存済み、最近、推奨のクエリを表示します。詳細については、クエリを保存して共有するをご覧ください。
- link共有リンク: クエリの短縮 URL を作成し、クリップボードにコピーします。これにより、クエリの共有が簡単になります。コピーした URL には、クエリの時間範囲で表される対応する絶対時間範囲が設定されます。例:
7:49:37 PM - 8:49:37 PM
- settings [設定]: ログ エクスプローラ ページのビューを調整し、クエリ結果の形式をカスタマイズします。詳細については、ログデータの表示の設定をご覧ください。
- 期間選択ツール: 表示するログエントリの期間を指定します。詳細については、期間セレクタを使用するをご覧ください。
- ログのストリーミング: Logging がログエントリをログバケットに保存する際に、ログエントリが表示されます。詳細については、ログをストリームをご覧ください。
- school学習: 関連するドキュメントやトピックへのリンクを表示します。
最近のクエリ、保存済みクエリ、推奨クエリを表示する
最近実行したクエリ、今後使用するために保存したクエリ、推奨クエリを表示するには、menu_book [クエリ ライブラリ] ボタンをクリックします。
[クエリ ライブラリ] タブには、次の情報が表示されます。
最近のクエリ: 最近実行したクエリを表示します。詳細については、最近のクエリを使用するをご覧ください。
保存済みのクエリ: 保存済みのクエリと、Google Cloud プロジェクトの他のユーザーから共有されているクエリを表示できます。詳細については、クエリを保存して共有するをご覧ください。
[推奨] タブ: Google Cloud プロジェクトのリソースに基づいて候補のクエリを表示します。詳細については、候補のクエリを使用するをご覧ください。
Google Cloud が提供するクエリ: さまざまな Google Cloud サービスの一般的なユースケースに基づいて、Google Cloud が提供するクエリを表示します。詳細については、ライブラリからクエリを選択するをご覧ください。
ログデータの表示設定を設定する
クエリ結果にログデータを表示する方法をカスタマイズするには、settings [設定] ボタンをクリックし、[表示]、[形式]、[概要フィールドを管理] のいずれかを選択します。
[タイムライン] ペインと [ログ フィールド] ペインを表示または非表示にしたり、クエリ結果の概要チップを非表示にしたり、ログの並べ替え順序を変更するには、[表示] を選択します。
クエリ結果の [時刻] 列を構成するには、[形式] を選択します。詳細については、[時間] 列を構成するをご覧ください。
各ログエントリを最大 10 行まで表示するには、[書式] を選択し、[行をラップ] をクリックします。デフォルトでは、各ログエントリのコンテンツは 1 行に収まるように切り捨てられます。各ログエントリには空白が保存されます。
概要フィールドを使用してログでパターンを検索するには、[概要フィールドの管理] を選択します。詳細については、概要フィールドを使用してログでパターンを検索するをご覧ください。
[時間] 列を構成する
[クエリ結果] ペインの [時間] 列には、ログエントリのタイムスタンプが表示されます。タイムスタンプの特定の部分のみが表示されるように、[時間] 列をカスタマイズできます。これにより、横方向のスペースが広がり、ログエントリに詳細情報を表示できます。
タイムスタンプの表示部分を選択するには、settings [設定] メニューをクリックし、[形式] を選択して、次のいずれかのオプションを選択します。
日付、時刻、タイムゾーン
日時(デフォルト)
時刻のみ
概要フィールドを使用してログでパターンを検索する
クエリ結果のログエントリに目を通し、特定の LogEntry
フィールドですばやく調べたいとします。または、特定のフィールドと値のペアでログエントリをグループ化することもできます。結果にサマリー フィールドを追加できます。サマリー フィールドは、各ログエントリ行の先頭にチップとして表示されます。
ログ エクスプローラには、デフォルトの概要フィールドとカスタム概要フィールドがあります。デフォルトの概要フィールドは現在のクエリ結果によって異なり、カスタムの概要フィールドでは、LogEntry
で任意のフィールドを選択できます。
クエリ結果のすべての概要フィールド チップを表示または非表示にするには、settings [設定] ボタンをクリックし、[表示]、[概要チップを表示] の順に選択します。このオプションを有効にすると、結果は未加工のテキスト形式で表示されます。
特定の概要フィールドを非表示にするには、[概要フィールド] を有効にしてから、[概要フィールドを非表示にする] をクリックします。 概要フィールドを変更するには、次のようにします。
settings [設定] ボタンをクリックし、[概要フィールドの管理] を選択します。
[概要フィールドの管理] ダイアログでは、次の操作を行えます。
カスタム フィールド名を [カスタム概要フィールド] に追加します。
概要フィールドは、引用符で囲まれた有効な文字のオートコンプリートとフィールド修正をサポートしています。たとえば、「
jsonPayload.id-field
」と入力するとjsonPayload."id-field"
に変わります。自動入力機能で候補として表示されるかどうかにかかわらず、任意の
LogEntry
フィールドを選択することもできます。既存のカスタム概要フィールドを削除するには、そのチップ内の
X
をクリックします。カスタム概要フィールドの切り捨てを有効または無効にします。
概要フィールド値の表示を短くするには、[カスタム概要フィールドの切り捨て] の横にある toggle_off トグルを使用します。フィールドが切り捨てられる前に表示する文字数を選択して、フィールドの先頭と末尾のどちらが表示されるかを選択できます。
デフォルトの概要フィールドの表示と非表示を切り替える
クエリ結果にどのデフォルトの概要フィールドが表示されるかをカスタマイズするには、[デフォルトの概要フィールドを非表示または表示する] メニューを展開します。
[適用] をクリックします。
これで、クエリ結果の概要フィールドが更新されました。
期間単位のログを表示する
表示するログエントリの期間を指定するには、期間セレクタを使用します。
クエリ結果を強制的に更新して現在の時刻を含めるには、keyboard_tab [現在に移動] をクリックします。
ログをストリーム
Logging がログバケットにログを保存する際に、ログをストリーミングできます。また、クエリを追加して、クエリに一致するログのみをストリーミングすることもできます。
クエリに基づいてログをストリーミングするには、[クエリ] ペインにクエリを追加し、メインツールバーの [ログをストリーミングする] ボタンを選択します。Logging がログデータをログバケットに保存する際に、クエリに一致するログのみが [クエリ結果] ペインに表示されます。クエリが指定されていない場合、Logging は各ログエントリが保存されると表示します。
ストリーミングを停止するには、stop [ストリームを停止] をクリックするか、手動でスクロールしてストリームを一時停止します。
クエリペイン
ログ エクスプローラでクエリを作成するには、クエリペインを使用します。クエリペインでは、次の機能を使用してクエリを作成、絞り込めます。
すべてのフィールドを検索: 検索キーワードやフレーズに一致するログエントリを検索します。[すべてのフィールドを検索] フィールドに追加された検索語は、クエリエディタ フィールドに追加され、クエリ式の一部として評価されます。詳細については、複数のログフィールドを検索するをご覧ください。
フィルタ メニュー: さまざまなメニューを使用してリソース、ログ名、重大度レベル、他のログとの関連性を選択することで、クエリを作成します。詳細については、フィルタメニューを使用するをご覧ください。
クエリエディタ フィールド: Logging クエリ言語を使用して高度なクエリを作成します。クエリエディタ フィールドが表示されない場合は、[クエリを表示] を有効にします。詳細については、Logging のクエリ言語を使用した高度なクエリを記述するをご覧ください。
クエリを確認したら、[クエリを実行] をクリックします。クエリに一致するログが [クエリ結果] ペインに一覧表示されます。[タイムライン] ペインと [ログ フィールド] ペインも、クエリ式に従って調整されます。
ログエントリの検索対象となるリソースを選択する
[ログ エクスプローラ] ページを開くと、選択したリソースで発生し、表示する権限があるログエントリが取得されます。Google Cloud プロジェクトの場合、フェッチされたログエントリには、別のプロジェクトのシンクによってプロジェクトに転送されるエントリも含まれます。クエリを入力すると、ログ エクスプローラには、クエリに一致するフェッチされたログエントリのみが表示されます。たとえば、クエリ severity>=ERROR
を追加すると、重大度が ERROR
以上のログエントリのみが表示されます。
現在のセッションでは、[スコープを絞り込む] メニューを使用して、ログ エクスプローラでログエントリを検索するリソースを構成できます。たとえば、トラブルシューティングを行う場合は、ログビューに含まれているログエントリ、または特定の Google Cloud プロジェクトに由来するログエントリのみを調べる場合があります。
[範囲を絞り込む] メニューでは、現在のプロジェクト、ログビュー、ログスコープで検索できます。
プロジェクト選択ツールで選択したプロジェクト、フォルダ、または組織で検索するには、[スコープを絞り込む] メニューを開き、[現在のプロジェクト] を選択します。
すべてのリソースの検索結果には、リソースで発生したログエントリが含まれます。Google Cloud プロジェクトの場合、検索結果には、別のプロジェクトのシンクによってプロジェクトに転送されるログエントリも含まれます。
ログビューを検索するには、[スコープを絞り込む] メニューを開き、[ログビュー] を選択して、メニューから 1 つ以上のログビューを選択します。
プロジェクト選択ツールでプロジェクトを選択すると、選択したプロジェクトによって保存されているログバケットのログビューがメニューに表示されます。ただし、フォルダまたは組織を選択すると、そのリソースで発生したログエントリを格納するすべてのログビューがメニューに表示されます。
プロジェクトに保存されているログバケットのログビューをログビュー メニューに追加するには、add_circle [プロジェクトをインポート] をクリックして、プロジェクトを選択します。
ログスコープ(プロジェクトやログビューを含む)に含まれるリソースを検索するには、[スコープを絞り込む] メニューを開き、[ログスコープ] を選択して、ログスコープを選択します。
ログスコープを構成する場合は、[スコープを管理] をクリックします。詳細については、ログスコープの作成と管理をご覧ください。
ログスコープは公開プレビュー版です。
[ログフィールド] ペイン
[ログフィールド] ペインにはログデータの概要が表示され、クエリを絞り込む効率的な方法を提供します。このペインには、エントリのフィールドに対応するさまざまな項目で分類されたログエントリが表示されます。
Query Editor フィールドでクエリを実行すると、クエリの結果に基づいて [ログフィールド] ペインが入力されます。このペインには、サポートされている項目ごとにログエントリの数が表示されます。各項目について 1 つ選択できます。次の項目は、常に利用できます。
リソースの種類
BindPlane を使用してオンプレミスとハイブリッド クラウドのログを書き込む場合は、リソースタイプ Generic Node を選択します。
重大度
クエリで複数の重大度レベルでフィルタする場合は、[重大度] メニューを使用します。
次のような [サービス] 項目が表示される場合があります。
リソースタイプが Kubernetes コンテナのログがあり、リソースタイプでログをフィルタしていない場合は、[サービス] メニューが表示されます。このメニューのエントリは、リソースの
k8s-pod/app
ラベルの値によって動的に決まります。たとえば、クエリの結果として次のようなログエントリが表示される場合、サービス メニューには
myservice
という名前のサービスが含まれます。{ ... labels: { compute.googleapis.com/resource_name: "mycluster1" k8s-pod/app: "myservice" k8s-pod/pod-template-hash: "5ffcd94fdd" } logName: "projects/my-project/logs/stdout" resource: { labels: {6} type: "k8s_container" } ... }
[監査対象リソース] のリソースタイプでフィルタすると、[サービス] メニューが表示されます。このメニューのエントリは、リソースの
service
ラベルの値によって動的に決まります。
プロジェクト ID などの他のディメンションは、選択項目に基づいて一覧表示されます。たとえば、クエリでログエントリをリソースタイプが [Kubernetes コンテナ] であるものに制限している場合や、ログのビューを選択している場合は、[プロジェクト ID] 項目が一覧表示されます。
クエリを調整する
クエリを絞り込むには、[ログフィールド] ペインから値を選択します。たとえば、[重大度] 見出しで [エラー] を選択すると、クエリペインが更新され「severity=ERROR
」が含まれるようになります。
選択した項目を削除するには、[消去] ボタンをクリックします。
[ログフィールド] ペインにフィールドを追加します
特定の LogEntry
Key-Value ペアを、[クエリ結果] ペインに入力されるログエントリの [ログフィールド] ペインに追加できます。たとえば、jsonPayload.message
フィールドの値で頻繁にフィルタする場合は、[ログフィールド] ペインにそれを追加します。
フィールドを [ログフィールド] ペインに追加するには、次の操作を行います。
[クエリ結果] ペインで、chevron_right [このログエントリを開く] をクリックしてログエントリを開きます。
フィールドの値を選択します。メニューから [ログフィールド ペインにフィールドを追加] を選択します。
このカスタム フィールドは、[ログフィールド] ペインに Key-Value ペアのリストとして表示されます。
[ログフィールド] ペインからカスタム フィールドを削除するには、フィールドの横にある [削除] をクリックします。
なお、次のタイプのフィールドは、[ログフィールド] ペインに追加できません。
- 時間に関連するフィールド(例:
receiveTimestamp
、protoPayload.startTime
)。 - カーディナリティが高いフィールド(例:
insertId
、protoPayload.latency
)。 - パスの配列インデックスが含まれるフィールド(例:
protoPayload.authorizationInfo[0].resource
)。
タイムライン
[タイムライン] ペインでは、時間の経過に伴うログの分布を可視化できます。クエリを実行するとタイムラインが再生成されるため、ログデータの傾向を確認し、問題のトラブルシューティングを簡単に行うことができます。
[タイムライン] ペインの表示と非表示を切り替えるには、keyboard_capslock [タイムラインを閉じる] をクリックします。
タイムラインの機能
タイムライン バー: 各タイムライン バーは期間を表します。各バーでは、各バーの期間で取得されたログの重大度の分類が 3 色で表示されます。この色は、次のログ重大度を表します。
- 青(重大度低): デフォルト、デバッグ、情報、通知。
- 黄(重大度中): 警告。
- 赤(重大度高): エラー、重大、アラート、緊急。
[タイムライン] の各バーには、ログを分析するためのオプションのメニューがあります。
時間コントロール: [クエリ結果] ペインに表示されるログの期間を調整できます。これらのオプションの詳細については、時間コントロールを使用してログを分析するをご覧ください。
期間: ヒストグラム バーでログの期間を示します。このタイムラインにより、クエリのより長い期間内で、表示されているログの位置がわかります。
時間コントロールを使用してログを分析する
ログデータの調査と分析に、タイムラインの時間コントロールを使用できます。
時間管理を調整する
タイムラインには、ログ エクスプローラに表示されるデータを調整できる時間コントロールがあります。
時間ハンドル: タイムラインのハンドルを内側にドラッグすると、データが絞り込まれます。また、タイムラインでデータを拡大するには、外側にドラッグします。[実行] をクリックします。
タイムラインを前後にスライドする: chevron_right [前進矢印] をクリックして、タイムラインを後の時間にスライドします。chevron_left [後退矢印] をクリックして、タイムラインを前の時間にスライドします。
ズームインとズームアウト: zoom_out [ズームアウト] をクリックすると、タイムラインに表示されるデータを拡大できます。zoom_in [ズームイン] をクリックして、タイムラインに表示されるデータを狭めます。
タイムラインを非表示にする: keyboard_capslock [タイムラインを閉じる] をクリックして、タイムラインを非表示にします。
タイムラインを変更できるのは、現在(「現在の時刻」)から過去 30 日までの期間までです。
時間のスクロールまたはズーム
前に記載した時間コントロールに加えて、タイムラインには時間に合わせてスクロールおよび 時間に合わせてズーム機能があり、ログ エクスプローラの他のペインに表示されるタイムラインとデータをより詳細に制御できます。おそらく、その相対的なサイズまたは重大度レベルに基づいて、タイムライン内の特定のバーに関心を持たれるでしょう。そのバーを選択し、ログ エクスプローラに表示されるログデータを調整できます。
[時間までスクロール] 機能を使用すると、[タイムライン] ペインや [ログ フィールド] ペインの値を変更せずに、ログデータを参照できます。[時間までスクロール] 機能を選択すると、次のようになります。
[クエリ結果] ペインに表示されるログデータは、選択したタイムライン バーで取得された期間に応じて調整されます。
クエリは実行されませんが、選択したタイムライン バーの期間に対応するログをクエリ結果ペインに表示できるようにするため、データが部分的に再読み込みされることがあります。
コンソール URL が更新され、選択したタイムライン バーの期間で取得された最新のログの
timestamp
が含まれます。
[時間に合わせてスクロール] 機能を選択するには、次の手順を行います。
タイムラインのバーの上にポインタを置きます。指定した期間のログデータの概要を含むペインが表示されます。
このペインで、[時間までスクロール] を選択します。
または、タイムライン バーをクリックすると、[時間に合わせてスクロール] の選択と同様の結果が得られます。
[時間に合わせてズーム] 機能は、[時間までスクロール] と類似していますが、選択したタイムライン バーで取得された期間に基づいたログデータに対するクエリが実行されます。[時間に合わせてズーム] 機能を選択すると、次のようになります。
- [クエリ結果] ペインに表示されるログデータは、選択したタイムライン バーの期間制限に応じて再読み込みされ、絞り込まれます。
- コンソール URL が更新され、選択したタイムライン バーの期間で取得された最新のログの
timestamp
が含まれます。 - タイムラインは変更され、選択したタイムライン バーの期間内にある
timestamp
値を持つログのみが表示されます。 - [ログフィールド] ペインのデータは、選択したタイムライン バーで取得された期間に応じて調整されます。
[時間に合わせてズーム] 機能を選択するには、次の手順を行います。
タイムラインのバーの上にポインタを置きます。指定した期間のログデータの概要を含むペインが表示されます。
このペインで、[時間に合わせてズーム] を選択します。
[クエリ結果] ツールバー
[クエリ結果] ツールバーには、次のオプションがあります。
- manage_search 結果を分析する: ログ分析を使用して、クエリ結果を集計しグラフ化します。このボタンは、選択したスコープに、ログ分析を使用するようにアップグレードされたログバケットが含まれている場合にのみ表示されます。詳細については、このドキュメントの結果を分析するセクションをご覧ください。
アクション: ログデータをさらに分析するためのさまざまなオプションを選択できます。
- ink_highlighter 結果にハイライト表示: クエリ結果にハイライト表示するテキストを入力します。
- add_chart 指標を作成する: ログベースの指標を設定します。
- call_merge シンクを作成する: シンクの包含フィルタに現在のクエリ式が自動的に入力されるログシンクを作成します。
- add_alert アラートを作成する: ログベースのアラート ポリシーを設定します。
- edit アラートを管理: アラート ポリシーを表示、管理します。
- download [ダウンロード]: ログを CSV 形式または JSON 形式でダウンロードします。詳細については、ログをダウンロードするをご覧ください。
結果を分析
ログ分析を使用するようにアップグレードされたログバケットがプロジェクトに含まれている場合は、[ログ分析] ページで SQL クエリを使用してログデータを集計、分析、グラフ化できます。ログ エクスプローラから [ログ分析] ページに移動するには、[結果] ツールバーで manage_search [結果を分析] をクリックします。
manage_search [結果を分析] ボタンは、選択したスコープにログ分析を使用するようにアップグレードされたログバケットが含まれている場合にのみ表示されます。たとえば、[範囲を絞り込む] メニューを使用して [ログビュー] を選択した場合は、ストレージ スコープ内の少なくとも 1 つのバケットがログ分析を使用するようにアップグレードされると、manage_search [結果を分析] ボタンが表示されます。詳細については、ログ分析を使用するようにログバケットをアップグレードするをご覧ください。
manage_search [結果を分析] をクリックすると、次のようになります。
ログ エクスプローラの期間は自動的に調整され、[ログ分析] ページに意味のあるログデータが含まれる場合があります。
[ログ分析] ページが新しいタブで開き、現在の Logging のクエリ言語クエリが SQL クエリに自動的に変換されます。
Google Cloud プロジェクト選択ツールで選択したリソースと [スコープを絞り込む] 設定の値によって、SQL クエリの
FROM
句の作成方法が決まります。選択するリソースは、プロジェクト、フォルダ、組織のいずれかです。[スコープを絞り込む] メニューに [プロジェクト] と表示されている場合、リソースの
_Required
バケットと_Default
バケットがクエリされます。[範囲を絞り込む] メニューに [表示] と表示されている場合、現在のプロジェクトのログバケットのログビューがクエリされます。異なるリソースによって保存されたログバケットのログビューは無視されます。
[スコープを絞り込む] 設定にログスコープの名前がリストされている場合、選択したログスコープにリストされているリソースに、前のルールが適用されます。たとえば、ログスコープにログビューが含まれている場合、リソースによって保存されたログバケットのログビューのみがクエリされます。ログスコープは公開プレビュー版です。
[ログ分析] ページでは、結果を表形式で、またはグラフとして表示できます。[グラフ] タブでは、グラフに表示するデータの選択、グラフの構成のカスタマイズ、グラフのカスタム ダッシュボードへの保存を行うことができます。クエリ結果からグラフを作成し、カスタム ダッシュボードにグラフを保存する方法については、ログ分析でクエリの結果をグラフ化するをご覧ください。
SQL を使用してクエリを作成する方法については、ログ分析でログをクエリして表示するをご覧ください。
クエリ結果を検索する
[クエリ結果] のコンテンツを検索するには、[クエリ結果] ペインで [結果にハイライト表示] をクリックし、検索語句を入力します。このフィルタを使用すると、新しいクエリを作成せずにログエントリ内の情報を検索できます。
検索条件に一致するキーワードが、[クエリ結果] ペインのログエントリでハイライト表示されます。
ログのダウンロード
ログのダウンロードに必要な権限を取得するには、プロジェクトに対するログビュー アクセサー (roles/logging.viewAccessor
)の IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織へのアクセスを管理するをご覧ください。
logging.logEntries.download
権限が含まれています。logging.logEntries.list
権限を含むロールを付与して、プリンシパルがログを表示およびダウンロードできるようにすることもできます。
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
ログをダウンロードする手順は次のとおりです。
[クエリ結果] ペインの [操作] メニューで、[ダウンロード] をクリックします。
[ログのダウンロード] ダイアログで、CSV 形式または JSON 形式を選択し、[ダウンロード] をクリックします。
ログデータをどのように処理するかを選択します。これらの欄から、以下の設定を行えます。
- コンピュータにデータをダウンロードします。
- データを Google ドライブにダウンロードします。
- 新しいタブにデータを表示します。
CSV を保存して Google ドライブを選択すると、Google スプレッドシートでファイルを開くことができます。
トラブルシューティングについては、ログのダウンロードに失敗するをご覧ください。
[クエリ結果] ペイン
クエリの結果を表示するには、[クエリ結果] ペインを使用します。アプリケーションのトラブルシューティングに役立つように、個々のログエントリの詳細を表示し、ログエントリをグループ化および分析してログのパターンを見つけることができます。
類似したログエントリを表示する
選択したログエントリに類似するログエントリを表示できます。これにより、目的のログに集中できます。
類似したログエントリを表示するには、次の操作を行います。
[クエリ結果] ペインで、ログエントリの chevron_right [開く] をクリックします。
[類似エントリ] をクリックし、[類似エントリを表示] を選択します。
クエリは、次のようなクエリで更新され、クエリ結果が再読み込みされます。
--Show similar entries protoPayload.methodName="io.k8s.core.v1.configmaps.update" --End of show similar entries
類似したログエントリのプレビューを表示する手順は次のとおりです。
[クエリ結果] ペインで、ログエントリの chevron_right [開く] をクリックします。
[類似のエントリ] メニューを開き、[類似のエントリをプレビュー] を選択します。
次の情報を含む別のダイアログが開きます。
- 検出されたパターン
- パターンを含むログエントリの割合
- パターンを含むログエントリの例
このダイアログでは、ログエントリの表示と非表示を切り替えることができます。
類似したログエントリを非表示にする
類似のログエントリを非表示にすると、クエリ結果からログを削除できます。
類似したログエントリを非表示にする方法は 2 つあります。
自動的にグループ化された多数のログエントリを非表示にする。クエリを実行すると、クエリ結果がパターンについて分析され、ログエントリが類似したログフィールドの内容に基づいて自動的にグループ化されます。
際立ったパターンが検出された場合は、[クエリ結果] ペインに、非表示になる結果の割合を示すバナーが表示されます。
類似のエントリを非表示: このボタンは、クエリに句を追加し、クエリ結果が再読み込みします。
プレビュー: 別のウィンドウを開き、見つかったパターンとエントリの例を表示します。
類似のログを非表示にすると、ログ エクスプローラ セッションの外部に情報は保存されません。各クエリは、表示されたログのみに基づいて新しい分析を生成します。返されるログの種類によって、異なるクエリでは、ログエントリの異なる部分が分析されます。
特定のログエントリに類似したログエントリを非表示にします。
ログエントリに類似したログエントリを非表示にするには、chevron_right [展開] をクリックし、[類似エントリ] メニューをクリックして、[類似エントリを非表示] を選択します。
クエリが更新され、[クエリ結果] ペインが再読み込みされます。選択したログエントリに類似するログエントリは表示されません。
フィールドに一致するログエントリを表示または非表示にする
ログエントリのフィールドに一致するログエントリを表示または非表示にできます。これにより、同じフィールドの内容が含まれているエントリに集中できます。
ログエントリの特定のフィールドに一致するログエントリを表示または非表示にするには、次の操作を行います。
[クエリ結果] ペインで、ログエントリの chevron_right [開く] をクリックします。
ログエントリ内のフィールドの値(
serviceName
のcompute.googleapis.com
など)をクリックします。メニューから [一致するエントリを表示] または [一致するエントリを非表示] を選択します。
クエリは、類似したエントリを表示または非表示にするクエリで更新され、クエリ結果が新しい結果で再読み込みされます。
ログエントリを固定する
クエリを実行した後は、ログエントリを固定することでハイライト表示できます。固定したログエントリは、[クエリ結果] ペインの中央に表示されます。新しいクエリを実行するときに、固定されたログエントリが含まれていない場合は、ログエントリの固定を解除するよう求められます。
ログエントリを固定するには、次の操作を行います。
- 固定するログエントリにポインタを置きます。
- [push_pin 固定する] をクリックします。
ログエントリを固定すると、その背景が暗くなり、push_pin [固定] アイコンが表示されます。固定されたログエントリの timestamp
に基づいて、[ヒストグラム] ペインにも固定アイコンが表示されます。
ログエントリの固定を解除するには、ピンアイコンをもう一度クリックします。
固定されたログエントリのリソースに一致するログを表示する
ログエントリを固定したら、新しいクエリを実行して、固定されたログのリソースタイプまたはリソースラベルに一致するログエントリを表示できます。
ログエントリを固定し、同じリソースタイプまたはリソースラベルに一致するログエントリを表示するには、次の操作を行います。
固定されたログの横にある arrow_drop_down [下矢印] をクリックして、固定メニューを展開します。
固定メニューから選択します。
固定されたログと同じ
resource.type
を使用してクエリを再実行するには、[Same resource.type] を選択します。たとえば、
resource.type
がk8s_node
のログエントリを固定するとします。[Same resource.type] を選択すると、クエリが再実行され、resource.type="k8s_node"
を含むすべてのログエントリが表示されます。固定されたログと同じ
resource.labels
を使用してクエリを再実行するには、[Same resource.labels] を選択します。
- 固定したログと同じ
trace
を使用してクエリを再実行するには、[同じトレース] を選択します。
- クエリを消去してすべてのログエントリを表示するには、[すべて表示] を選択します。
固定されたログエントリを [タイムライン] に表示する
[タイムライン] を使用すると、固定されたログエントリのハイライト表示、スクロール、詳細の確認を行うことができます。
[タイムライン] で push_pin [固定] をクリックし、次のメニュー オプションから選択します。
- ログエントリまでスクロール: ログエントリが現在の [クエリ結果] ペインに表示され、固定されたログエントリを周辺のコンテキスト ログで確認できます。
- ログエントリに合わせてズーム: [タイムライン] ペインに表示される期間が絞り込まれ、固定されたログの近くにあるログを分離するようにクエリを調整できます。
- 固定を解除: ログエントリの固定を解除します。
トレースデータを表示する
ログエントリに trace
とレイテンシ関連のフィールドの両方が含まれている場合、レイテンシとトレースのアイコンが表示されます。
ログエントリに trace
フィールドしか含まれていない場合は、トレース アイコンのみが表示されます。
ログエントリに関連するトレースデータを表示するには、トレース アイコンをクリックします。次を選択できます。
- トレースの詳細表示: 親スパンと子トレースのほか、トレースの詳細を表示します。トレースの詳細を表示するには、[トレースで表示] をクリックして Cloud Trace に移動します。詳細パネルの内容について詳しくは、トレースを検索して調査するをご覧ください。
このトレースのすべてのログを表示: ログエントリに関連付けられたトレースの識別子に
trace
フィールドを追加して、クエリを調整して実行します。トレースされたリクエストのみを表示:
True
に設定されたtraceSampled
フィールドを追加して、クエリを調整して実行します。サンプリングについてさらに詳しくは、サンプリング レートをご覧ください。
Monitoring データを表示する
GKE や Compute Engine ログなどの特定のログについては、ログの概要の行からリソースタイプを選択して、次のオプションを含むメニューを表示できます。
- Monitoring 詳細の表示: GKE リソースの詳細パネルが開きます。詳細パネルについては、リソースの詳細の表示をご覧ください。
- Monitoring で表示: リソースの [Monitoring] ページが表示されます。
- GKE で表示、または Compute Engine で表示: GKE または Compute Engine インターフェース内のリソースについては、[詳細] ページを開きます。
ログエントリへのリンクをコピーする
ログへのリンクを共有するには、ログエントリを展開して、[content_copyコピー] を選択します。 JSON でログをコピーするか、ログへのリンクをコピーするかを選択できます。リンクがクリップボードにコピーされます。Google Cloud プロジェクトにアクセスできるユーザーにリンクを送信できるようになりました。ユーザーがブラウザにリンクを貼り付けるか選択すると、Logging は [クエリ結果] ペインにログエントリを固定します。
クエリの例
Google Cloud プロダクトとユースケース別に整理された推奨クエリについては、ログ エクスプローラを使用したサンプルクエリをご覧ください。たとえば、Kubernetes 関連のクエリを実行して、Google Kubernetes Engine のログを検索できます。
Compute Engine のログを表示する
特定の Compute Engine リソースタイプ(gce_instance
や gce_network
など)では、ログ エクスプローラのいくつかの場所にリソース ID を含むリソース名がサブテキストとして表示されます。たとえば、gce_instance
リソースタイプの場合、VM 名と VM ID が並んで表示されます。リソース名は、クエリを作成する正しいリソース ID の特定に役立ちます。
Compute Engine リソース名は、次の場所に表示されます。
- [クエリ] ペインのフィルタ メニュー: Compute Engine のリソースタイプではリソース名が表示され、対応するリソース ID がサブテキストとして表示されます。
- ログフィールド: Compute Engine リソースタイプでは、フィールドのディメンションでリソース ID ではなくリソース名が表示されます。
- クエリ結果: Compute Engine VM インスタンス ログの場合、
resource.labels
フィールドには、対応するリソース名のメタデータが表示されます。 - 概要フィールド: Compute Engine VM インスタンス ログの場合、チップにはリソース ID ではなくリソース名が表示されます。
トラブルシューティング
このセクションでは、ログ エクスプローラを使用する際の一般的な問題のトラブルシューティングの手順を説明します。
宛先のシンクでログを表示する際に問題が発生した場合は、ルーティングとシンクのトラブルシューティングをご覧ください。
ログのダウンロードに失敗する
ログ エクスプローラを使用しているので、download [ダウンロード] をクリックします。コマンドが起動しても、完了しないか、エラーが報告されます。
この問題を解決するには、次のことを試して、コマンドの実行時間を短縮します。
- [ログをダウンロード] ダイアログで、[ログエントリの最大数] の値を減らします。
- ログが照会される期間を短縮します。
- クエリ結果ツールバーで、ダウンロードを開始する前に [類似のエントリを非表示にする] をクリックします。
- インデックス登録済みフィールドを使用するようにクエリを変更します。
VM インスタンスのコンソールログが見つからない
Compute Engine インスタンスのコンソールに書き込まれたログが、ログ エクスプローラでは使用できない場合があります。ログを表示するには、次のようにします。
-
Google Cloud コンソールで、[VM インスタンス] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Compute Engine] である結果を選択します。
インスタンスを選択して、ページの [ログ] セクションで [シリアルポート 1(コンソール)] を選択します。
シリアルポート出力が Cloud Logging に送信されるようにインスタンスを構成できます。詳細については、シリアルポート出力のロギングの有効化と無効化をご覧ください。
Google Cloud プロジェクトまたは組織 ID を取得する
Google Cloud コンソールの任意の場所から Google Cloud プロジェクトまたは組織 ID を取得するには、Google Cloud プロジェクトと組織のセレクタから Google Cloud プロジェクトのリストを展開し、[ID] 列で Google Cloud プロジェクト ID を見つけます。
ログエントリを表示できない
ログエントリが表示されない場合は、次の点を確認します。
正しい Google Cloud プロジェクトが選択されていることを確認します。
Google Cloud プロジェクトでログを生成するリソースが使用され、そのリソースでアクティビティが発生していることを確認します。Google Cloud プロジェクトが新規の場合でも、作成されたという事実を記録した監査ログがあるはずです。ログを生成するリソースを使用していることを確認する方法については、サービスとリソースタイプのマッピングをご覧ください。
期間が短すぎないことを確認します。
現在の除外クエリを表示して、探しているログが誤って除外されていないか確認します。
[範囲を絞り込む] メニューの設定で参照されているプロジェクトとログビューのログレコードを表示する権限があることを確認します。検索範囲を調整する方法については、範囲を絞り込むをご覧ください。
クエリは正しいが、ログエントリが表示されない
Logging の保持期間を経過したログエントリは表示できません。有効なログの保持期間については、ログの保持期間をご覧ください。
負荷が高くなっている場合、Logging へのログの送信やログの受信と表示に遅延が生じることがあります。
未来のタイムスタンプを持つログエントリは、現在の時刻がタイムスタンプに「追いつく」までログ エクスプローラに表示されません。これは異常な状況です。おそらく、ログを送信しているアプリケーションの時間のずれが原因です。
クエリのスコープが大きすぎるため、現実的な時間内に完了できませんでした。「オペレーションが完了する前に期限が切れました」と表示されることがあります。クエリをより限定的なものにするか、期間を短くしてみてください。
クエリでエラーが返される
バケットを指定せずにリソースにクエリを発行した場合、Cloud Logging は Google Cloud プロジェクト内のシンクの履歴を使用して、そのリソースに対してエントリが書き込まれた場所を特定します。エントリが書き込まれた可能性がある 200 個を超えるバケットを Cloud Logging が識別すると、Error: Invalid query
というメッセージが表示されてクエリが失敗します。
この問題を解決するには、クエリの範囲をストレージのサブセットに絞り込みます。詳細については、範囲を絞り込むをご覧ください。
クエリ結果の期間とクエリが一致しない
[クエリ結果] ペインと [ログフィールド] ペインに表示されるログデータは、ヒストグラム タイムラインでキャプチャされた期間に従って調整されます。ヒストグラムのタイムラインは、ヒストグラムの時間コントロールまたは時間範囲セレクタを使用して調整します。 これらの時間コントロールを調整しても、[クエリ] ペインのクエリ式は変更されません。
タイムスタンプを含むクエリの場合、期間セレクタは無効になります。 クエリはタイムスタンプ式を期間の制限として使用します。 クエリがタイムスタンプ式を使用しない場合、クエリは時間範囲セレクタを時間範囲の制限として使用します。
サポートを受ける
サポートを受ける方法については、Google Cloud Observability のサポートページをご覧ください。