このドキュメントでは、ログスコープを作成して管理する方法について説明します。ログスコープを使用すると、表示または分析するログエントリを効率的に見つけることができます。プロジェクト、フォルダ、組織で発生したログエントリのみを表示して分析する場合は、このドキュメントの対象外です。ただし、ログシンクを使用してログを他のプロジェクトまたはユーザー定義のログバケットに転送する場合や、ログビューを使用する場合は、このドキュメントの情報が特定のログエントリを効率的に見つける際に役立ちます。
このドキュメントでは、ログの表示方法については説明しません。このトピックの詳細については、ログ エクスプローラを使用してログを表示するをご覧ください。
ログスコープについて
ログスコープは、一連のリソースのリストを取得するプロジェクト レベルの永続的なリソースです。これらのリソースには、プロジェクト、フォルダ、組織、ログビューを含めることができます。たとえば、本番環境で使用されるリソースを含むプロジェクトの一覧を取得するログスコープを定義できます。また、特定のリソースタイプのログエントリを含むログビューの一覧を取得するログスコープを定義することもできます。
Trusted Cloud プロジェクト、フォルダ、または組織リソースを作成すると、Logging は _Default
という名前のログスコープを作成します。このスコープには、作成されたプロジェクト、フォルダ、または組織が含まれます。検索対象のリソースが Trusted Cloud プロジェクト、フォルダ、または組織の場合、リソースで発生し、ログバケットに保存されるログエントリが結果に含まれます。ログバケットは任意のプロジェクトに置くことができます。プロジェクトを検索すると、別のプロジェクトのシンクによってプロジェクトに転送され、ログバケットに保存されるログエントリも結果に含まれます。
ログスコープを作成できます。作成したログスコープの編集と削除も可能です。ただし、_Default
というログスコープは編集または削除できません。
ログスコープを使用すると、[ログ エクスプローラ] ページで、ログデータの検索対象となるリソースを制御できます。このページを開いてログスコープを選択すると、そのスコープに含まれるリソースが検索され、表示が更新されます。
プロジェクトの場合、[ログ エクスプローラ] ページが開いたときに検索されるリソースのセットが、デフォルトのログスコープによって決まります。ただし、ストレージからフェッチされるログエントリは、検索対象リソースの Identity and Access Management(IAM)ロールと期間の設定によって決まります。プロジェクトが作成されると、_Default
という名前のログスコープがデフォルトのログスコープとして指定されます。
ログスコープと一元的なログストレージの違い
一元的なログストレージとログスコープの両方を使用すると、異なるプロジェクトで生成されたログデータを表示できます。
ログストレージを一元化する場合は、組織またはフォルダ内のシンクを構成して、ログエントリを単一のストレージ ロケーションに転送します。一元的なストレージでは、ログデータを 1 か所でクエリできるため、傾向検索や問題調査時のクエリを簡素化できます。セキュリティの観点からみると、ストレージ ロケーションが 1 つになるため、セキュリティ アナリストのタスクも簡素化されます。
ログスコープに含まれているリソースに対してクエリが実行されると、個々のクエリ結果が結合されます。ログスコープを使用すると、異なるロケーションに保存されているログデータを読み取り時に集約できます。ただし、ログスコープを使用して、一元的なログバケットの 1 つ以上のログビューに対する読み取りアクセス権を付与することもできます。
[ログ エクスプローラ] ページを開くと、デフォルトのログスコープに含まれているリソースに対してクエリが実行されます。そのため、通常表示するデータがページに表示されるように、デフォルトのスコープを構成します。たとえば、ログビューのリストを表示するようにデフォルトのログスコープを設定して、クエリを実行すると、App Hub アプリケーションのログデータが返されます。
ベスト プラクティス
ログスコープを使用すると、構成を定義し、再利用できるように保存しておくことができます。複雑な検索構成の場合は、ログスコープを作成することをおすすめします。
たとえば、問題のトラブルシューティングで、チームが所有するすべての仮想マシン(VM)インスタンスのログエントリを表示したいとします。この場合、次のように対応します。
表示するログエントリが複数のログバケットと複数のプロジェクトに保存されていることがわかりました。ほとんどのログバケットには、分析するログエントリを含むログビューが存在します。ログビューが存在しない場合は、作成できます。
今後同様のトラブルシューティング タスクが発生する可能性があるため、ログスコープを作成することにしました。
Trusted Cloud コンソールで [ログ エクスプローラ] ページを開き、[範囲を絞り込む] メニューを使用して、新しいログスコープを選択します。
ログエントリを確認し、調査していた問題の解決に必要な情報を探します。
問題を解決したら、障害の原因を同僚と共有します。また、今後も同様の障害が発生することが予想されるため、自分自身や障害を調査する担当者が関連するログエントリをすばやく見つけられるように、ログスコープを作成しました。
App Hub アプリケーションとログスコープ
App Hub アプリケーションは、ログデータを複数のプロジェクトに書き込む場合があります。ログデータは、そのデータが生成されたプロジェクトに保存されている場合があります。また、組織管理者が一元的なストレージを構成している場合もあります。アプリケーションのログデータを表示するには、ログスコープを作成し、アプリケーションのログデータを保存するプロジェクトまたはログビューを一覧表示するように構成してから、デフォルトのログスコープとして構成します。これらの手順を完了すると、アプリケーションによって書き込まれたデータが [ログ エクスプローラ] ページに自動的に表示されます。このデータは、異なるプロジェクトまたは一元的なログバケットに保存されている場合でも表示されます。
ログデータを表示するプロジェクトにカスタム ログスコープを作成します。このプロジェクトは、App Hub ホスト プロジェクトか、アプリ対応フォルダの管理プロジェクトです。たとえば、フォルダの表示名が My Folder
の場合、管理プロジェクトの表示名は My Folder-mp
になります。
制限事項
_Default
という名前のログスコープを削除または変更することはできません。- デフォルトのログスコープをサポートするのは、 Trusted Cloud プロジェクトのみです。
- ユーザー定義のログスコープにフォルダや組織を追加することはできません。
- ログスコープは
global
ロケーションに作成されます。
始める前に
-
ログスコープの作成と表示に必要な権限を取得するには、プロジェクト、フォルダ、組織に対するログ構成書き込み(
roles/logging.configWriter
)の IAM ロールを付与するように管理者へ依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。この事前定義ロールには、ログスコープの作成と表示に必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
ログスコープを作成して表示するには、次の権限が必要です。
-
ログスコープを作成、管理する:
logging.logScopes.{create, delete, get, list, update}
-
ログスコープを作成、管理する:
-
Select the tab for how you plan to use the samples on this page:
gcloud
-
Install the Google Cloud CLI.
-
Configure the gcloud CLI to use your federated identity.
For more information, see Sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
- PROJECT_ID: プロジェクトの ID。App Hub 構成の場合は、App Hub ホスト プロジェクトまたはアプリ管理用フォルダの管理プロジェクトを選択します。
- PROJECT_ID: プロジェクトの ID。
- LOG_SCOPE_ID: ログスコープの ID。例:
my-scope
- PROJECT_ID: プロジェクトの ID。App Hub 構成の場合は、App Hub ホスト プロジェクトまたはアプリ管理用フォルダの管理プロジェクトを選択します。
- LOCATION_ID は
global
に設定する必要があります。 - PROJECT_ID: プロジェクトの ID。App Hub 構成の場合は、App Hub ホスト プロジェクトまたはアプリ管理用フォルダの管理プロジェクトを選択します。
- LOG_SCOPE_ID: ログスコープの ID。例:
my-scope
DESCRIPTION: 省略可。ログスコープの説明。説明を文字列としてフォーマットします。
RESOURCE_NAMES: プロジェクトまたはログビューの完全修飾名のカンマ区切りのリスト。たとえば、ログスコープに
my-project
を含めるには、projects/my-project
を指定します。parent
: プロジェクト、フォルダ、または組織の完全修飾名。たとえば、このフィールドを"projects/PROJECT_ID"
に設定します。ここで、PROJECT_ID は Trusted Cloud プロジェクトの ID です。App Hub 構成の場合は、App Hub ホスト プロジェクトまたはアプリ管理用フォルダの管理プロジェクトを選択します。locations
:"global"
に設定します。name
: ログスコープの完全修飾名に設定します。プロジェクトの場合、このフィールドの形式は次のとおりです。"projects/PROJECT_ID/locations/global/logScopes/LOG_SCOPE_ID"
上記の式で、LOG_SCOPE_ID はログスコープの名前(production など)です。
resource_names
: プロジェクトとログビューの配列。各プロジェクトとログビューは完全修飾名で指定します。description
: 簡単な説明。たとえば、「本番環境リソースのスコープ」などです。- PROJECT_ID: プロジェクトの ID。App Hub 構成の場合は、App Hub ホスト プロジェクトまたはアプリ管理用フォルダの管理プロジェクトを選択します。
- LOCATION_ID は
global
に設定する必要があります。 - PROJECT_ID: プロジェクトの ID。App Hub 構成の場合は、App Hub ホスト プロジェクトまたはアプリ管理用フォルダの管理プロジェクトを選択します。
- LOG_SCOPE_ID: ログスコープの ID。例:
my-scope
DESCRIPTION: ログスコープの説明。説明を文字列としてフォーマットします。ログスコープの説明を変更しない場合は、このフィールドを省略します。
RESOURCE_NAMES: プロジェクトまたはログビューの完全修飾名のカンマ区切りのリスト。リソースのリストを変更しない場合は、このフィールドを省略します。
- PROJECT_ID: プロジェクトの ID。App Hub 構成の場合は、App Hub ホスト プロジェクトまたはアプリ管理用フォルダの管理プロジェクトを選択します。
- LOG_SCOPE_ID: ログスコープの ID。例:
my-scope
- PROJECT_ID: プロジェクトの ID。App Hub 構成の場合は、App Hub ホスト プロジェクトまたはアプリ管理用フォルダの管理プロジェクトを選択します。
- LOCATION_ID は
global
に設定する必要があります。 - LOG_SCOPE_ID: ログスコープの ID。例:
my-scope
After installing the Google Cloud CLI, sign in to the gcloud CLI with your federated identity and then initialize it by running the following command:
gcloud init
Terraform
ローカル開発環境でこのページの Terraform サンプルを使用するには、gcloud CLI をインストールして初期化し、ユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定します。
詳細については、 Trusted Cloud 認証ドキュメントのローカル開発環境の ADC の設定をご覧ください。
REST
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
After installing the Google Cloud CLI, sign in to the gcloud CLI with your federated identity and then initialize it by running the following command:
gcloud init
詳細については、 Trusted Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。
ログスコープを一覧表示する
gcloud
プロジェクトのログスコープの一覧を取得するには、
gcloud logging scopes list
コマンドを使用します。gcloud logging scopes list --project=PROJECT_ID
コマンドを実行する前に、次のフィールドを更新します。
プロジェクトのログスコープの詳細を取得するには、
gcloud logging scopes describe
コマンドを使用します。gcloud logging scopes describe LOG_SCOPE_ID --project=PROJECT_ID
コマンドを実行する前に、次のフィールドを更新します。
Terraform
Terraform を使用してログスコープの作成と変更を行うことができます。ただし、Terraform でログスコープの一覧を取得することはできません。
REST
Cloud Logging API には、リソースのログスコープの一覧を取得するコマンドや、特定のログスコープの詳細を報告するコマンドがあります。コマンドの一覧については、API リファレンス ドキュメントをご覧ください。
Trusted Cloud プロジェクトの場合は、次のコマンドを使用します。
上記のコマンドの
parent
フィールドの構文は次のとおりです。projects/PROJECT_ID/locations/LOCATION_ID
前の式のフィールドの意味は次のとおりです。
ログスコープを作成する
プロジェクトごとに作成できるログスコープは 100 個までです。ログスコープには、ログビューとプロジェクトを合わせて 100 個まで含めることができますが、プロジェクトは 5 つまでです。ログスコープにフォルダや組織を追加することはできません。
gcloud
プロジェクトにログスコープを作成するには、
gcloud logging scopes create
コマンドを使用します。gcloud logging scopes create LOG_SCOPE_ID --project=PROJECT_ID \ --description=DESCRIPTION \ --resource-names=RESOURCE_NAMES
コマンドを実行する前に、次のフィールドを更新します。
Terraform
Terraform 構成を適用または削除する方法については、基本的な Terraform コマンドをご覧ください。詳細については、Terraform プロバイダのリファレンス ドキュメントをご覧ください。
Terraform を使用してプロジェクト、フォルダ、組織にログスコープを作成するには、Terraform リソース
google_logging_log_scope
を使用します。コマンドで、次のフィールドを設定します。
REST
Cloud Logging API は、フォルダまたは組織でのログスコープの作成もサポートしています。詳しくは、API リファレンス ドキュメントをご覧ください。
Trusted Cloud プロジェクトの場合は、次のコマンドを使用します。
上記のコマンドの
parent
フィールドの構文は次のとおりです。projects/PROJECT_ID/locations/LOCATION_ID
前の式のフィールドの意味は次のとおりです。
ログスコープの変更または削除
gcloud
プロジェクトのログスコープに含まれるリソースのリストの説明を変更するには、
gcloud logging scopes update
コマンドを使用します。gcloud logging scopes update LOG_SCOPE_ID --project=PROJECT_ID \ --description=DESCRIPTION \ --resource-names=RESOURCE_NAMES
コマンドを実行する前に、次のフィールドを更新します。
プロジェクトのログスコープを削除するには、
gcloud logging scopes delete
コマンドを使用します。gcloud logging scopes delete LOG_SCOPE_ID --project=PROJECT_ID
コマンドを実行する前に、次のフィールドを更新します。
Terraform
Terraform 構成を適用または削除する方法については、基本的な Terraform コマンドをご覧ください。詳細については、Terraform プロバイダのリファレンス ドキュメントをご覧ください。
Terraform を使用してプロジェクト、フォルダ、組織にログスコープを変更するには、Terraform リソース
google_logging_log_scope
を使用します。REST
Cloud Logging API には、ログスコープを変更または削除できるコマンドがあります。コマンドの一覧については、API リファレンス ドキュメントをご覧ください。
Trusted Cloud プロジェクトの場合は、次のコマンドを使用します。
上記のコマンドの
parent
フィールドの構文は次のとおりです。projects/PROJECT_ID/locations/LOCATION_ID/logScopes/LOG_SCOPE_ID
前の式のフィールドの意味は次のとおりです。
次のステップ
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-07-21 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-07-21 UTC。"],[],[],null,[]] -