ログ エクスプローラを使用してログを表示する

このドキュメントでは、Google Cloud コンソールのログ エクスプローラの概要について説明します。これは、ログデータの取得、表示、分析に使用できます。ログ エクスプローラを使用すると、ログを検索して表示し、問題のトラブルシューティングを行えます。Logging APIGoogle Cloud CLI を使用して、ログを読み取ることもできます。

ヒストグラムの各要素には、要素に関連付けられた時間間隔で受信したログエントリのおおよその数が表示されます。一定期間に受信したログエントリの正確な数を取得するには、Log Analytics を使用するか、Cloud Storage バケットにログをコピーします。

特定のパターンを含むログエントリの数をカウントするなど、ログエントリに対して集約オペレーションを実行するには、Log Analytics を使用するようにログバケットをアップグレードし、Log Analytics からクエリを実行します。ログ エクスプローラを使用して、Log Analytics を使用するようにアップグレードされたログバケットでログを表示できます。さらに詳しいことついては、ログ分析の概要をご覧ください。

始める

ログ エクスプローラでログを表示するために必要な権限を取得するには、次の IAM ロールの付与を管理者に依頼してください。

  • _Required バケットのすべてのログを表示し、_Default バケットの _Default ビューでログを表示します。プロジェクトに対するログ閲覧者roles/logging.viewer)。
  • データアクセス ログを含む、_Required バケットと _Default バケットのすべてのログを表示します。プロジェクトに対する プライベート ログ閲覧者roles/logging.privateLogViewer)。
  • ユーザー定義のログバケットでログビューに保存されているログを表示します。ユーザー定義バケットを含むプロジェクトのログ表示アクセス者roles/logging.viewAccessor)。条件なしでログ表示アクセス者のロールを持っている場合は、ユーザー定義のログバケットで任意のログビューに保存されているログを表示できます。例については、バケットからのログの読み取りをご覧ください。
  • バケット内の制限付き LogEntry フィールドを表示します。プロジェクトに対する ログフィールド アクセス者roles/logging.fieldAccessor)。詳細については、フィールド レベルのアクセスを構成するをご覧ください。

ロールの付与の詳細については、アクセスの管理をご覧ください。

必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

ログ エクスプローラの使用を開始するには、次のようにします。

  1. Google Cloud コンソールのナビゲーション パネルで、[ロギング] を選択してから、[ログ エクスプローラ] を選択します。

    [ログ エクスプローラ] に移動

  2. 適切な Google Cloud プロジェクトを選択します。

    Amazon Web Services Elastic Compute Cloud(AWS EC2)を使用する場合、ログエントリは AWS アカウントを Google Cloud サービスにリンクする AWS コネクタ プロジェクトにあります。

ログ エクスプローラのインターフェース

ログ エクスプローラのインターフェースを使用すると、ログの取得、ログデータの解析と分析、クエリ パラメータの絞り込みができます。

ログ エクスプローラのユーザー インターフェース

ログ エクスプローラには次のセクションがあります。このページで詳しく説明します。

  1. [アクション] ツールバー
  2. クエリペイン
  3. [結果] ツールバー
  4. [ログフィールド] ペイン
  5. ヒストグラム
  6. [クエリ結果] ペイン

[アクション] ツールバー

[アクション] ツールバー機能を使用すると、次のことができます。

  • 範囲を絞り込む: 現在の Google Cloud プロジェクトのログのみ、または 1 つ以上のストレージ ビューで、検索の範囲を絞り込むことができます。範囲指定の詳細については、範囲の調整をご覧ください。
  • 学習: 関連するドキュメントやトピックへのリンクを表示します。
  • 共有リンク: クエリの短縮 URL を作成し、クリップボードにコピーします。これにより、クエリの共有が簡単になります。コピーした URL には、クエリの時間範囲で表される対応する絶対時間範囲が設定されます。例: 7:49:37 PM - 8:49:37 PM

範囲を絞り込む

ログがログバケットに保存されている場合は、ログ エクスプローラでログを表示できます。選択したプロジェクトによっては、ログ エクスプローラのスコープを調整して、特定のログバケットに保存されているログを表示する必要がある場合があります。

デフォルトでは、ログ エクスプローラには、現在のプロジェクト内のリソースによって生成されたか、現在のプロジェクトに直接転送され、任意のログバケットに保存されたすべてのログが表示されます。デフォルトでは、ログ エクスプローラでは、別のプロジェクトのリソースによって生成されたログは表示されず、現在のプロジェクトのログバケットに転送されます。

ログ エクスプローラに表示するログをカスタマイズするには、[アクション] ツールバーの [範囲を絞り込む] ボタンを使用します。

  • 現在のプロジェクトで生成されたか、現在のプロジェクトに直接転送されたすべてのログを表示するには、[現在のプロジェクト別のスコープ] を選択します。

    ログシンクは、現在のプロジェクトのログバケット、別のプロジェクトのログバケット、または別のプロジェクトにログを転送できます。詳細については、サポートされている宛先にログをルーティングするをご覧ください。

  • 現在のプロジェクトのログバケットに保存されている特定のログを表示するには、[ストレージによるスコープ] を選択して、1 つ以上のログビューを選択します。このオプションは、現在のプロジェクトのログバケット内のどのログにどのユーザーがアクセスできるかをより詳細に制御するために使用します。

    ログビューの作成と管理の方法の詳細については、ログバケットでログビューを構成するをご覧ください。

  • 別のプロジェクトのログバケットに保存されている特定のログを表示するには、[ストレージによるスコープ] を選択し、プロジェクトの [プロジェクトをインポート] をクリックしてログビュー セレクタをクリックし、1 つ以上のログビューを選択します。組織に複数のプロジェクトがあり、それぞれに独自のログが生成されており、ログ エクスプローラでこれらのログを同時に表示する場合は、このオプションを使用します。

    たとえば、ログバケットに保存されているすべてのログを表示するには、_AllLogs ビューを選択します。

    プロジェクトとログビュー セレクタが表示された [範囲を絞り込む] ダイアログ。

クエリペイン

[クエリ] ペイン機能を使用して、次の操作を行います。

  • [クエリ] タブ: 次の機能を使用してクエリを作成、絞り込みます。

    • 期間セレクタ: 表示するログの期間を指定します。詳細については、期間セレクタを使用するをご覧ください。

    • 検索テキスト ボックス: 検索キーワードやフレーズに一致するログエントリを検索します。詳細については、複数のログフィールドを検索するをご覧ください。

    • フィルタ メニュー: [リソース]、[ログ名]、[重大度] に基づいてクエリを作成します。詳細については、フィルタ メニューの使用をご覧ください。

    • クエリエディタ フィールド: Logging クエリ言語を使用して高度なクエリを作成します。詳細については、高度なクエリを作成するをご覧ください。

  • [最近] タブ: 最近実行したクエリを表示します。詳細については、最近のクエリを使用するをご覧ください。

  • 保存済み: 保存済みのクエリと、Google Cloud プロジェクトの他のユーザーから共有されているクエリを表示できます。詳細については、クエリを保存するクエリを共有するをご覧ください。

  • [推奨] タブ: Google Cloud プロジェクトのリソースに基づいて候補のクエリを表示します。詳細については、候補のクエリを使用するをご覧ください。

  • [ライブラリ] タブ: ユースケースに基づいて、Google が提供するクエリを表示して実行します。詳細については、ライブラリからクエリを選択するをご覧ください。

  • 保存: [保存済み] タブで表示、実行できるクエリを保存します。

  • クエリをクリア: [クエリ] ペインでクエリを作成する際に行った選択をクリアしてリセットします。

  • ログのストリーミング: Logging がログエントリをログバケットに保存する際に、ログエントリが表示されます。詳細については、ログをストリームをご覧ください。

  • クエリの実行: [クエリ] ペインでクエリを作成してから実行します。

クエリエディタ フィールドが表示されない場合は、[クエリを表示] を有効にします。検索テキスト ボックスに検索キーワードを追加すると、それらのキーワードも Query Editor フィールドに表示され、クエリ式の一部として評価されます。

クエリを確認したら、[クエリを実行] をクリックします。クエリに一致するログが [クエリ結果] ペインに表示されます。[ヒストグラム] ペインと [ログ フィールド] ペインも、クエリ式に従って調整されます。

ログをストリーム

Logging がログバケットにログを保存する際に、ログをストリーミングできます。また、クエリを追加して、クエリに一致するログのみをストリーミングすることもできます。

クエリに基づいてログをストリーミングするには、[クエリ] ペインにクエリを追加して、[ログをストリーミングする] を選択します。Logging がログデータをログバケットに保存する際に、クエリに一致するログのみが [クエリ結果] ペインに表示されます。クエリが指定されない場合、Logging は各ログが保存されると表示します。

ストリーミングを停止するには、[ストリーミングを停止する] をクリックするか、[クエリ結果] ペインでスクロールします。

[結果] ツールバー

結果ツールバーには、次のオプションがあります。

  • ログフィールド: ログ エクスプローラ ページのレイアウトで [ログ フィールド] ペインを表示または非表示にします。詳細については、このドキュメントの [ログ フィールド] ペインをご覧ください。
  • [ヒストグラム]: ログ エクスプローラ ページのレイアウトで [ヒストグラム] ペインを表示または非表示にします。詳細については、このドキュメントのヒストグラム セクションをご覧ください。
  • 結果を分析する: ログ分析を使用して、クエリ結果を集計してグラフ化します。このボタンは、選択したスコープに、ログ分析を使用するようにアップグレードされたログバケットが含まれている場合にのみ表示されます。詳細については、このドキュメントの結果を分析するセクションをご覧ください。
  • 指標を作成する: ログベースの指標を設定します。
  • アラートを作成する: ログベースのアラートを設定します。
  • 現在の位置に移動: クエリ結果を強制的に更新して、現在の時刻を含めます。期間セレクタでカスタム範囲を使用し、終了時刻が設定されている場合、クエリはデフォルトの期間である 1 時間で実行されます。それ以外の場合は、現在の開始日または期間で更新され、クエリが実行されます。なお、この機能を使用しても、クエリ式は変更されません。
  • その他の操作: その他のオプションを使用して管理ログベースのアラートまたはシンクの作成を行います。

結果を分析

ログ分析を使用するようにアップグレードされたログバケットがプロジェクトに含まれている場合は、[ログ分析] ページで SQL クエリを使用してログデータを集計、分析、グラフ化できます。ログ エクスプローラから [ログ分析] ページに移動するには、[結果] ツールバーで [結果を分析] をクリックします。

[結果を分析] ボタンは、選択したスコープにログ分析を使用するようにアップグレードされたログバケットが含まれている場合にのみ表示されます。たとえば、[範囲を絞り込む] ボタンを使用して [ストレージによるスコープ] を選択した場合は、ストレージ スコープ内の少なくとも 1 つのバケットがログ分析を使用するようにアップグレードされると、 [結果を分析] ボタンが表示されます。ログ分析を使用するようにログバケットをアップグレードする方法については、ログ分析を使用するようにログバケットをアップグレードするをご覧ください。

[結果の分析] をクリックすると、次のようになります。

  • ログ エクスプローラの期間は自動的に調整され、[ログ分析] ページに意味のあるログデータが含まれる場合があります。

  • [ログ分析] ページが新しいタブで開き、現在の Logging のクエリ言語クエリが SQL クエリに自動的に変換されます。

  • ログ エクスプローラで選択したスコープは、SQL クエリ内の同等の FROM 句に変換されます。

    • [現在のプロジェクト別のスコープ] を選択した場合、_Required バケットと _Default バケットがクエリされます。

    • 1 つ以上のログビューを選択して [ストレージによるスコープ] を選択した場合、選択したログビューを含む現在のプロジェクト内のログバケットのみがクエリされます。

    • [ストレージによるスコープ] を選択し、別のプロジェクトでログビューを指定した場合、ログバケットはクエリされません。

[ログ分析] ページでは、結果を表形式で、またはグラフとして表示できます。[グラフ] タブで、グラフ化するデータの選択、グラフ構成のカスタマイズ、カスタム ダッシュボードへのグラフの保存を行うことができます。クエリ結果からグラフを作成し、カスタム ダッシュボードにグラフを保存する方法については、ログ分析でクエリの結果をグラフ化するをご覧ください。

SQL を使用してログ分析でクエリを作成する方法については、ログ分析でログをクエリして表示するをご覧ください。

[ログフィールド] ペイン

[ログフィールド] ペインにはログデータの概要が表示され、クエリを絞り込む効率的な方法を提供します。このペインには、エントリのフィールドに対応するさまざまな項目で分類されたログエントリが表示されます。

Query Editor フィールドでクエリを実行すると、クエリの結果に基づいて [ログフィールド] ペインが入力されます。このペインには、サポートされている項目ごとにログエントリの数が表示されます。各項目について 1 つ選択できます。次の項目は、常に利用できます。

  • リソースの種類

    BindPlane を使用してオンプレミス クラウドとハイブリッド クラウドのログを書き込む場合は、リソースタイプ [汎用ノード] を選択します。

  • 重大度

    クエリで複数の重大度レベルでフィルタする場合は、[重大度] メニューを使用します。

次のような [サービス] 項目が表示される場合があります。

  • リソースタイプが 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」が含まれるようになります。

次のスクリーンショットでは、[ログフィールド] ペインを使用して重大度とリソースタイプを選択した後のクエリ エディタ フィールドを示します。

2 つの選択項目がある [ログフィールド] ペインの例。

選択を解除するには、[Clear X] をクリックします。

[ログフィールド] ペインにフィールドを追加します

特定の LogEntry Key-Value ペアを、[クエリ結果] ペインに入力されるログエントリの [ログフィールド] ペインに追加できます。たとえば、jsonPayload.message フィールドの値で頻繁にフィルタする場合は、[ログフィールド] ペインにそれを追加します。

フィールドを [ログフィールド] ペインに追加するには、次の操作を行います。

  1. [クエリ結果] ペインで、 [開く] をクリックしてログエントリを開きます。

  2. フィールドの値を選択します。メニューから [ログフィールド ペインにフィールドを追加] を選択します。

    このカスタム フィールドは、[ログフィールド] ペインに Key-Value ペアのリストとして表示されます。

[ログフィールド] ペインからカスタム フィールドを削除するには、フィールドの横にある [削除] をクリックします。

なお、次のタイプのフィールドは、[ログフィールド] ペインに追加できません。

  • 時間に関連するフィールド(例: receiveTimestampprotoPayload.startTime)。
  • カーディナリティが高いフィールド(例: insertIdprotoPayload.latency)。
  • パスの配列インデックスが含まれるフィールド(例: protoPayload.authorizationInfo[0].resource)。

ヒストグラム

[ヒストグラム] ペインでは、時間の経過に伴うログの分布を可視化できます。クエリを実行するとヒストグラムが再生成されるため、ログデータの傾向を確認し、問題のトラブルシューティングを簡単に行うことができます。

[ヒストグラム] ペインを表示または非表示にするには、[結果] ツールバーの [ヒストグラム] をクリックします。

ヒストグラムの機能

[ヒストグラム] ペイン。

  1. ヒストグラム バー: 各ヒストグラム バーは、期間を表します。各バーでは、各バーの期間で取得されたログの重大度の分類が 3 色で表示されます。この色は、次のログ重大度を表します。

    • 青(重大度低): デフォルトデバッグ情報通知
    • 黄(重大度中): 警告
    • 赤(重大度高): エラー重大アラート緊急

    各ヒストグラム バーには、ログを分析するためのオプションのメニューがあります。

  2. 時間コントロール: [クエリ結果] ペインに表示されるログの期間を調整できます。これらのオプションの詳細については、時間コントロールを使用してログを分析するをご覧ください。

  3. タイムライン: [クエリ結果] ペインに表示されている、ログの期間をヒストグラム バーで表示します。このタイムラインにより、クエリのより長い期間内で、表示されているログの位置がわかります。

時間コントロールを使用してログを分析する

ログデータの調査と分析に、ヒストグラムの時間コントロールを使用できます。

時間をすばやく調整する

ヒストグラムには、ログ エクスプローラに表示されるデータをすばやく調整できる時間コントロールがあります。

ヒストグラム ペイン タイムラインで、クイック時間コントロールが表示されます。

  • 時間ハンドル: タイムラインのハンドルを内側にドラッグすると、データが絞り込まれます。また、ヒストグラムのタイムラインでデータを拡大するには、外側にドラッグします。[実行] をクリックします。

  • タイムラインを前後にスライドする: [前進矢印] をクリックして、タイムラインを後の時間にスライドします。 [後退矢印] をクリックして、タイムラインを前の時間にスライドします。

  • ズームイン / ズームアウト: [ズームアウト] をクリックして、タイムラインに表示されるデータを拡大します。 [ズームイン] をクリックして、タイムラインに表示されるデータを狭めます。

タイムラインを変更できるのは、現在(「現在の時刻」)から 30 日前までの期間までです。

時間のスクロールまたはズーム

前に記載した時間コントロールに加えて、ヒストグラムには時間に合わせてスクロールおよび 時間に合わせてズーム機能があり、ログ エクスプローラの他のペインに表示されるヒストグラムとデータをより詳細に制御できます。

ヒストグラムペインのタイムラインには、時間へのスクロールと時間へのズームのコントロールが表示されています。

おそらく、その相対的なサイズまたは重大度レベルに基づいて、特定のヒストグラム バーに興味を持たれるでしょう。そのヒストグラム バーを選択し、ログ エクスプローラに表示されるログデータを調整できます。

[時間までスクロール] 機能を使用すると、[ヒストグラム] ペインや [ログ フィールド] ペインの値を変更せずに、ログデータを参照できます。[時間までスクロール] 機能を選択すると、次のようになります。

  • [クエリ結果] ペインに表示されるログデータは、選択したヒストグラム バーで取得された期間に応じて調整されます。

    クエリは実行されませんが、選択したヒストグラム バーの期間に対応するログをクエリ結果ペインに表示できるようにするため、データが部分的に再読み込みされることがあります。

  • コンソール URL が更新され、選択したヒストグラム バーの期間で取得された最新のログの timestamp が含まれます。

[時間に合わせてスクロール] 機能を選択するには、次の手順を行います。

  1. ヒストグラム タイムラインのバーの上にポインタを置きます。指定した期間のログデータの概要を含むペインが表示されます。

  2. このペインで、[時間までスクロール] を選択します。

    または、ヒストグラム バーをクリックすると、[時間に合わせてスクロール] の選択と同様の結果が得られます。

[時間に合わせてズーム] 機能は、[時間までスクロール] と類似していますが、選択したヒストグラム バーで取得された期間に基づいたログデータに対するクエリが実行されます。[時間に合わせてズーム] 機能を選択すると、次のようになります。

  • [クエリ結果] ペインに表示されるログデータは、選択したヒストグラム バーの期間制限に応じて再読み込みされ、絞り込まれます。
  • コンソール URL が更新され、選択したヒストグラム バーの期間で取得された最新のログの timestamp が含まれます。
  • ヒストグラムは変更され、選択したヒストグラム バーの期間内にある timestamp 値を持つログのみが表示されます。
  • [ログフィールド] ペインのデータは、選択したヒストグラム バーで取得された期間に応じて調整されます。

[時間に合わせてズーム] 機能を選択するには、次の手順を行います。

  1. ヒストグラム タイムラインのバーの上にポインタを置きます。指定した期間のログデータの概要を含むペインが表示されます。

  2. このペインで、[時間に合わせてズーム] を選択します。

クエリ結果

クエリの結果を表示するには、[クエリ結果] ペインを使用します。アプリケーションのトラブルシューティングに役立つように、個々のログエントリの詳細を表示し、ログエントリをグループ化および分析してログのパターンを見つけることができます。ログを表示するプロジェクトで Gemini が有効になっている場合は、Gemini を使用してログエントリを要約することもできます。

時間列を構成する

[クエリ結果] ペインの [時間] 列に、ログエントリのタイムスタンプが表示されます。[時間] 列をカスタマイズして、タイムスタンプの特定の部分のみを表示できます。これにより、ログエントリでより多くの情報を表示できるように、水平方向のスペースが増えます。

表示するタイムスタンプの部分を選択するには、時間列の [その他の時間オプション] メニューをクリックして、次のいずれかを選択します。次のオプションを使用できます。

  • 日付、時刻、タイムゾーン

  • 日付と時刻(デフォルト)

  • 時刻のみ

概要フィールドを使用してログでパターンを検索する

クエリ結果のログエントリに目を通し、特定の LogEntry フィールドですばやく調べたいとします。あるいは、特定のフィールドと値のペアでログエントリをグループ化したい場合があります。結果には概要フィールドを追加できます。このフィールドは、各ログエントリ行の先頭にチップとして表示されます。たとえば、次の画像は、各ログエントリに概要フィールド resource.type が追加されたクエリ結果を示しています。

ログ エクスプローラによって、リソースタイプを表示している緑色のテキストが前に付いたログが表示されます。

ログ エクスプローラには、デフォルトの概要フィールドとカスタム概要フィールドがあります。デフォルトの概要フィールドは現在のクエリ結果によって異なり、カスタムの概要フィールドでは、LogEntry で任意のフィールドを選択できます。

クエリ結果の概要フィールドを非表示にするには、 [概要フィールド] の切り替えを使用します。この切り替えを有効にすると、結果が生のテキスト形式で表示されます。デフォルトでは、各ログエントリの内容が 1 行に収まるように切り捨てられます。各ログエントリを最大 10 行まで表示するには、 [行をラップ] の切り替えを使用します。各ログエントリには空白が保存されます。

特定の概要フィールドを非表示にするには、[概要フィールド] を有効にしてから、[概要フィールドを非表示にする] をクリックします。

概要フィールドを変更するには、次のようにします。

  1. [概要] 列の [編集] ボタンをクリックして、編集メニューを開きます。

    クエリ結果ペインには、概要フィールドを編集するためのボタンが表示されます。

  2. [概要フィールドの管理] ダイアログでは、次の操作を行えます。

    • カスタム フィールド名を [カスタム概要フィールド] に追加します。

      概要フィールドの選択には次の特徴があります。

      • クエリ結果に表示されているログを使用したオートコンプリート。
      • 引用符で囲まれた有効文字のフィールド修正

      たとえば、「jsonPayload.id-field」と入力すると jsonPayload."id-field" に変わります。

      オートコンプリート関数の候補かどうかに関係なく、任意の LogEntry フィールドを選択することもできます。

      既存のカスタム概要フィールドを削除するには、そのチップ内の X をクリックします。

    • カスタム概要フィールドの切り捨てを有効または無効にします。

      概要フィールド値の表示を短くするには、[カスタム概要フィールドの切り捨て] の横にある トグルを使用します。フィールドが切り捨てられる前に表示する文字数を選択して、フィールドの先頭と末尾のどちらが表示されるかを選択できます。

    • デフォルトの概要フィールドの表示と非表示を切り替える

      クエリ結果にどのデフォルトの概要フィールドが表示されるかをカスタマイズするには、[デフォルトの概要フィールドを非表示または表示する] メニューを展開します。

  3. [Apply](適用)をクリックします。

    これで、クエリ結果の概要フィールドが更新されました。

クエリ結果を検索する

クエリ結果の内容を検索するには、[クエリ結果] ペインで [結果内] をクリックし、検索キーワードを入力します。このフィルタを使用すると、新しいクエリを作成せずにログエントリの情報を検索できます。

検索条件と一致する用語が [クエリ結果] ペインのログエントリでハイライト表示されます。

検索キーワードに一致するログエントリがハイライト表示されます。

類似したログエントリを表示する

選択したログエントリに類似したログエントリを表示できるため、関心のあるログに集中できます。

類似したログエントリを表示するには、次の操作を行います。

  1. [クエリ結果] ペインで、ログエントリの [展開] をクリックします。

  2. [類似エントリ] をクリックし、[類似エントリを表示] を選択します。

    クエリは次のようなクエリに更新され、クエリ結果が再読み込みされます。

    --Show similar entries
    protoPayload.methodName="io.k8s.core.v1.configmaps.update"
    --End of show similar entries
    

同様のログエントリのプレビューを表示する手順は次のとおりです。

  1. [クエリ結果] ペインで、ログエントリの [展開] をクリックします。

  2. [類似のエントリ] メニューを開き、[類似のエントリをプレビュー] を選択します。

    次の情報を含む別のダイアログが開きます。

    • 検出されたパターン
    • パターンを含むログエントリの割合
    • パターンを含むログエントリの例

    このダイアログで、ログエントリの表示と非表示を切り替えることができます。

    [ログエントリをプレビュー] ダイアログでは、類似したログエントリの表示と非表示を切り替えることができます。

類似したログエントリを非表示にする

同様のログエントリを非表示にして、クエリ結果からログを削除できます。

類似したログエントリを非表示にするには、次の 2 つの方法があります。

  • 自動的にグループ化された多数のログエントリを非表示にする。クエリを実行すると、クエリ結果がパターンについて分析され、ログエントリが類似したログフィールドの内容に基づいて自動的にグループ化されます。際立ったパターンが検出された場合は、[クエリ結果] ペインに、非表示になる結果の割合を示すバナーが表示されます。

    同様のログバナーを非表示にします。

    類似のエントリを非表示: このボタンは、クエリに句を追加し、クエリ結果が再読み込みします。

    プレビュー: 別のウィンドウを開き、見つかったパターンとエントリの例を表示します。

    類似したログを非表示にすると、ログ エクスプローラ セッションの外部で情報は保存されません。各クエリでは、表示されたログのみに基づいて新しい分析が行われます。返されるログの種類によって、異なるクエリでは、ログエントリの異なる部分が分析されます。

  • 特定のログエントリに類似したログエントリを非表示にする。ログエントリに類似したログエントリを非表示にするには、次の操作を行います。

    1. ログエントリで、 [展開] をクリックし、[類似エントリ] メニューをクリックしてから、[類似したエントリを非表示] を選択します。

      クエリが更新され、[クエリ結果] ペインが再読み込みされます。選択したログエントリに類似したログエントリは表示されません。

フィールドに一致するログエントリを表示または非表示にする

ログエントリのフィールドに一致するログエントリを表示または非表示にできます。これにより、同じフィールドの内容が含まれているエントリに集中できます。

ログエントリの特定のフィールドに一致するログエントリを表示または非表示にするには、次の操作を行います。

  1. [クエリ結果] ペインで、ログエントリの [展開] をクリックします。

  2. ログエントリ内のフィールドの値(serviceNamecompute.googleapis.com など)をクリックします。

    次のメニューが表示されます。

    特定のフィールドに基づいてログエントリを非表示または表示する選択肢があるメニュー。

  3. [一致するエントリを表示] または [一致するエントリを非表示] を選択します。

    クエリは、類似したエントリを表示または非表示にするクエリで更新され、クエリ結果が新しい結果で再読み込みされます。

ログエントリを固定する

クエリを実行した後は、ログエントリを固定することでハイライト表示できます。固定されたログエントリは、[クエリ結果] ペインの中央に残ります。新しいクエリを実行するときに、固定されたログエントリが含まれていない場合は、ログエントリの固定を解除するよう求められます。

ログエントリを固定するには、次の操作を行います。

  1. 固定するログエントリにポインタを置きます。
  2. [ 固定する] をクリックします。

ログエントリを固定すると、その背景が暗くなり、 [固定] アイコンが表示されます。固定されたログエントリの timestamp に基づいて、[ヒストグラム] ペインにも固定アイコンが表示されます。

ログ エクスプローラにより [クエリ結果] ペインと [ヒストグラム] ペインに、固定されたログエントリが表示されます。

ログエントリの固定を解除するには、ピンアイコンをもう一度クリックします。

固定されたログエントリのリソースに一致するログを表示する

ログエントリを固定した後で、固定されたログのリソースタイプまたはリソースラベルと一致するログエントリを表示する新しいクエリを実行できます。

ログエントリを固定し、同じリソースタイプまたはリソースラベルに一致するログエントリを表示するには、次の操作を行います。

  1. 固定されたログの横にある [下矢印] をクリックして、固定メニューを展開します。

  2. 固定メニューから選択します。

    • 固定されたログと同じ resource.type を使用してクエリを再実行するには、[同じ resource.type] を選択します。

      たとえば、resource.typek8s_node のログエントリを固定するとします。[同じ resource.type] を選択すると、クエリを再実行し、すべてのログエントリを resource.type="k8s_node" で表示します。

    • 固定されたログと同じ resource.labels を使用してクエリを再実行するには、[同じ resource.labels] を選択します。

    • 固定されたログと同じ trace を使用してクエリを再実行するには、[同じトレース] を選択します。

    • クエリを消去してすべてのログエントリを表示するには、[すべて表示] を選択します。

固定されたログエントリを [ヒストグラム] ペインに表示する

[ヒストグラム] ペインを使用すると、固定されたログエントリのハイライト表示、スクロール、詳細の確認を行うことができます。

[ヒストグラム] ペインで、 [固定] をクリックし、次のメニュー オプションから選択します。

  • ログエントリまでスクロール: ログエントリが現在の [クエリ結果] ペインに表示され、固定されたログエントリを周辺のコンテキスト ログで確認できます。
  • ログエントリに合わせてズーム: [ヒストグラム] ペインに表示される期間が絞り込まれ、固定されたログの近くにあるログを分離するようにクエリを調整できます。

トレースデータを表示する

ログエントリに trace とレイテンシ関連のフィールドの両方が含まれている場合、レイテンシとトレースのアイコンが表示されます。

トレースデータが含まれるログエントリが表示されます。

ログエントリに trace フィールドしか含まれていない場合は、トレース アイコンのみが表示されます。

トレース フィールドのみを含むログエントリの表示にはトレース アイコンが付いています。

ログエントリに関連するトレースデータを表示するには、トレース アイコンをクリックします。次を選択できます。

  • トレースの詳細表示: 親スパンと子トレースのほか、トレースの詳細を表示します。トレースの詳細を表示するには、[トレースで表示] をクリックして Cloud Trace に移動します。詳細パネルの内容について詳しくは、トレースを検索して調査するをご覧ください。
  • このトレースのすべてのログを表示: ログエントリに関連付けられたトレースの識別子に trace フィールドを追加して、クエリを調整して実行します。

  • トレースされたリクエストのみを表示: True に設定された traceSampled フィールドを追加して、クエリを調整して実行します。サンプリングについてさらに詳しくは、サンプリング レートをご覧ください。

Monitoring データを表示する

GKE や Compute Engine ログなどの特定のログについては、ログの概要の行からリソースタイプを選択して、次のオプションを含むメニューを表示できます。

  • Monitoring 詳細の表示: GKE リソースの詳細パネルが開きます。詳細パネルについては、リソースの詳細の表示をご覧ください。
  • Monitoring で表示: リソースの [Monitoring] ページが表示されます。
  • GKE で表示、または Compute Engine で表示: GKE または Compute Engine インターフェース内のリソースについては、[詳細] ページを開きます。

GKE リソースの [ログ エクスプローラ] メニューを表示します。

ログへのリンクを共有するには、ログエントリを展開して、[リンクをコピー] を選択します。 リンクがクリップボードにコピーされます。Google Cloud プロジェクトにアクセスできるユーザーにリンクを送信できるようになりました。ユーザーがブラウザにリンクを貼り付けるか選択すると、Logging は [クエリ結果] ペインにログエントリを固定します。

他のユーザーと共有するログエントリのリンクをコピーします。

ログのダウンロード

ログは CSV 形式または JSON 形式でダウンロードできます。ログをダウンロードするには、次のいずれかの Identity and Access Management のロールが必要です。

  • Logging 管理者roles/logging.admin
  • ログ表示アクセス者roles/logging.viewAccessor

ログをダウンロードする手順は次のとおりです。

  1. [クエリ結果] ペインのツールバーで、[ ダウンロード] をクリックします。

  2. [ログのダウンロード] ダイアログで、CSV 形式または JSON 形式を選択して [ダウンロード] をクリックします。

  3. ログデータの処理方法を選択します。これらの欄から、以下の設定を行えます。

    • コンピュータにデータをダウンロードします。
    • Google ドライブにデータをダウンロードします。
    • 新しいタブにデータを表示します。

    CSV を保存して Google ドライブを選択すると、Google スプレッドシートでファイルを開くことができます。

トラブルシューティング情報については、ログのダウンロードに失敗するをご覧ください。

クエリの例

Google Cloud プロダクトとユースケース別に整理された推奨クエリについては、ログ エクスプローラを使用したサンプルクエリをご覧ください。たとえば、Kubernetes 関連のクエリを実行して、Google Kubernetes Engine のログを検索できます。

Compute Engine のログを表示する

特定の Compute Engine リソースタイプ(gce_instancegce_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 ではなくリソース名が表示されます。

トラブルシューティング

このセクションでは、ログ エクスプローラを使用する際の一般的な問題のトラブルシューティングの手順を説明します。

宛先のシンクでログを表示する際に問題が発生した場合は、ルーティングとシンクのトラブルシューティングをご覧ください。

ログのダウンロードに失敗する

ログ エクスプローラを使用しているので、 [ダウンロード] をクリックします。コマンドが起動しても、完了しないか、エラーが報告されます。

この問題を解決するには、次のことを試して、コマンドの実行時間を短縮します。

  • [ログのダウンロード] ダイアログで、[最大ログエントリ] の値を小さくします。
  • ログが照会される期間を短縮します。
  • クエリ結果ツールバーで、ダウンロードを開始する前に [類似のエントリを非表示にする] をクリックします。
  • インデックス登録済みフィールドを使用するようにクエリを変更します。

VM インスタンスのコンソールログが見つからない

Compute Engine インスタンスのコンソールに書き込まれたログが、ログ エクスプローラでは使用できない場合があります。ログを表示するには、次のようにします。

  1. Google Cloud コンソールのナビゲーション パネルで、[Compute Engine] を選択してから、[VM インスタンス] を選択します。

    [VM インスタンス] に移動

  2. インスタンスを選択して、ページの [ログ] セクションで [シリアルポート 1(コンソール)] を選択します。

シリアルポート出力が Cloud Logging に送信されるようにインスタンスを構成できます。詳細については、シリアルポート出力のロギングの有効化と無効化をご覧ください。

Google Cloud プロジェクトまたは組織 ID を取得する

Google Cloud コンソールの任意の場所から Google Cloud プロジェクトまたは組織 ID を取得するには、Google Cloud プロジェクトと組織のセレクタから Google Cloud プロジェクトのリストを展開し、[ID] 列で Google Cloud プロジェクト ID を見つけます。

プロジェクトの ID が表示されます。

ログエントリを表示できない

ログエントリが表示されない場合は、次の点を確認します。

  • 正しい Google Cloud プロジェクトが選択されているか。そうでない場合は、Google Cloud プロジェクトと組織セレクタから正しい Google Cloud プロジェクトを選択します。

  • Google Cloud プロジェクトでログを生成するリソースを使用しているか。また、そのリソースにアクティビティがあるか。Google Cloud プロジェクトが新規の場合でも、作成されたという事実を記録した監査ログがあるはずです。ログを生成するリソースを使用していることを確認するには、モニタリング対象リソースの一覧のページの「サービスのリソースタイプへのマッピング」セクションに移動します。

  • 期間が短すぎるかどうか。クエリの期間が正しいことを確認します。

  • 現在の除外クエリを表示して、探しているログが誤って除外されていないか確認します。

  • ログの表示に正しいスコープが使用されているか。検索範囲を調整する手順については、範囲を絞り込むをご覧ください。

クエリは正しいが、ログエントリが表示されない

  • Logging の保持期間を経過したログエントリは表示できません。有効なログの保持期間については、ログの保持期間をご覧ください。

  • 負荷が高くなっている場合、Logging へのログの送信やログの受信と表示に遅延が生じることがあります。

  • 未来のタイムスタンプを持つログエントリは、現在の時刻がタイムスタンプに「追いつく」までログ エクスプローラに表示されません。これは異常な状況です。おそらく、ログを送信しているアプリケーションの時間のずれが原因です。

  • クエリのスコープが大きすぎるため、現実的な時間内に完了できませんでした。「オペレーションが完了する前に期限が切れました」と表示されることがあります。クエリをより限定的なものにするか、期間を短くしてみてください。

クエリでエラーが返される

バケットを指定せずにリソースにクエリを発行した場合、Cloud Logging は Google Cloud プロジェクト内のシンクの履歴を使用して、そのリソースに対してエントリが書き込まれた場所を特定します。エントリが書き込まれた可能性がある 200 個を超えるバケットを Cloud Logging が識別すると、Error: Invalid query というメッセージが表示されてクエリが失敗します。

この問題を解決するには、クエリの範囲をストレージのサブセットに絞り込みます。詳細については、範囲を絞り込むをご覧ください。

クエリ結果の期間とクエリが一致しない

[クエリ結果] ペインと [ログフィールド] ペインに表示されるログデータは、ヒストグラム タイムラインでキャプチャされた期間に従って調整されます。ヒストグラムのタイムラインは、ヒストグラムの時間コントロールまたは時間範囲セレクタを使用して調整します。 これらの時間コントロールを調整しても、[クエリ] ペインのクエリ式は変更されません。

タイムスタンプのあるクエリの場合、時間範囲セレクタは無効になり、クエリはタイムスタンプ式を時間範囲の制限として使用します。クエリがタイムスタンプ式を使用しない場合、クエリは期間セレクタを期間の制限として使用します。

サポートを利用する

サポートを受ける方法については、Google Cloud Observability のサポートページをご覧ください。