このドキュメントでは、Cloud Logging バケットに転送されたログエントリを見つける方法について説明します。ログバケットは、ログデータを保持する Google Cloud プロジェクトの Cloud Logging ストレージ コンテナです。ログシンクを作成して、ログのすべてまたは一部を Cloud Logging の任意のバケットにルーティングできます。この柔軟性により、ログを保存する Google Cloud プロジェクトと、ログとともに保存する他のログを選択できます。
Cloud Logging バケットにルーティングしたログは、すぐに利用できます。
他の宛先に転送されたログの表示については、次のドキュメントをご覧ください。
始める前に
ログバケットの作成と管理の手順については、次のドキュメントをご覧ください。
シンクのコンセプトについては、ルーティングとストレージ モデルの概要: シンクをご覧ください。
ログを転送する方法については、サポートされている宛先にログを転送するをご覧ください。
ログの表示
ログバケット内の個々のログエントリのトラブルシューティングと表示を行うには、次の操作を行います。
-
Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Logging] である結果を選択します。
- [アクション] ツールバーで [範囲を絞り込む] を選択します。
- [範囲を絞り込む] ダイアログで、[ストレージごとのスコープ] を選択します。
1 つ以上のログバケットを選択し、[適用] をクリックします。
クエリの実行方法については、ログ エクスプローラでクエリを作成するをご覧ください。
ログ分析を使用するようにアップグレードされたログバケットに保存されているログエントリに対して分析を行うには、次の操作を行います。
-
Google Cloud コンソールで、[ログ分析] ページに移動します。
検索バーを使用してこのページを検索する場合は、小見出しが [Logging] である結果を選択します。
[ログビュー] リストで、ビューを見つけて、[クエリ] を選択します。[クエリ] ペインには、クエリ対象のテーブル名を含むデフォルトのクエリが入力されます。
[Query] ペインでクエリを入力することや、表示されているクエリを編集することもできます。
ログバケット内のすべてのログをクエリするには、
_AllLogs
ビューを選択します。ツールバーで、[クエリを実行] をクリックします。
クエリが実行され、クエリの結果が [結果] タブに表示されます。
ツールバー オプションを使用して、クエリをフォーマットし、クエリを消去して、BigQuery SQL リファレンス ドキュメントを開くことができます。
クエリの実行方法については、ログ分析でログをクエリして表示するをご覧ください。
ログエントリの構成
Logging のログエントリは、LogEntry
型のオブジェクトです。
LogEntry
リファレンスで [LOG_ID]
と呼ばれる同じログタイプのログエントリは、通常同じ形式です。次の表にログエントリの例を示します。
syslog
Compute Engine syslog
は、仮想マシン インスタンスで実行されるロギング エージェント google-fluentd
によって生成されるカスタム ログタイプです。
{
logName: "projects/my-gcp-project-id/logs/syslog",
timestamp: "2015-01-13T19:17:01Z",
resource: {
type: "gce_instance",
labels: {
instance_id: "12345",
zone: "us-central1-a",
project_id: "my-gcp-project-id"
}
},
insertId: "abcde12345",
textPayload: "Jan 13 19:17:01 my-gce-instance /USR/SBIN/CRON[29980]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)"
}
request_log
App Engine request_log
のログエントリには、RequestLog
型のオブジェクトを持つ protoPayload
フィールドがあります。
{
logName: "projects/my-gcp-project-id/logs/appengine.googleapis.com/request_log",
timestamp: "2015-01-13T19:00:39.796169Z",
resource: {
type: "gae_app",
labels: {
module_id: "default",
zone: "us6",
project_id: "my-gcp-project-id",
version_id: "20150925t173233"
}
}
httpRequest: {
status: 200
}
insertId: "abcde12345",
operation: {
id: "abc123",
producer: "appengine.googleapis.com/request_id",
first: true,
last: true
}
protoPayload: {
@type: "type.googleapis.com/google.appengine.logging.v1.RequestLog"
versionId: "20150925t173233",
status: 200,
startTime: "2017-01-13T19:00:39.796169Z",
# ...
appId: "s~my-gcp-project-id",
appEngineRelease: "1.9.17",
}
}
直接的に示す
activity
ログは管理アクティビティの監査ログです。そのペイロードは、AuditLog 型の JSON 表現です。
{
logName: "projects/my-gcp-project-id/logs/cloudaudit.googleapis.com/activity"
timestamp: "2017-04-22T13:41:32.245Z"
severity: "NOTICE"
resource: {
type: "gce_instance"
labels: {
instance_id: "2403273232180765234"
zone: "us-central1-b"
project_id: "my-gcp-project-id"
}
}
insertId: "54DC1882F4B49.A4996C2.6A02F4C1"
operation: {
id: "operation-1492868454262-54dc185e9a4f0-249fe233-f73d472a"
producer: "compute.googleapis.com"
last: true
}
protoPayload: {
@type: "type.googleapis.com/google.cloud.audit.AuditLog"
authenticationInfo: {
principalEmail: "[email protected]"
}
requestMetadata: {…}
serviceName: "compute.googleapis.com"
methodName: "v1.compute.instances.delete"
resourceName: "projects/my-gcp-project-id/zones/us-central1-b/instances/abc123"
}
}
トラブルシューティング
シンクの宛先にログがないように見える場合や、シンクがログを正しく転送していないと思われる場合は、転送とシンクのトラブルシューティングをご覧ください。
料金
Cloud Logging では、サポートされている宛先へのログの転送で料金を請求されることはありませんが、宛先での料金が発生する場合があります。_Required
ログバケットを除き、Cloud Logging では、ログバケットへのログのストリーミングと、ログバケットのデフォルト保持期間よりも長いストレージの料金が請求されます。
Cloud Logging では、ログのコピー、[ログ エクスプローラ] ページまたは [ログ分析] ページを介して発行されたクエリには課金されません。
詳細については、次のドキュメントをご覧ください。
- Cloud Logging の料金概要
宛先の費用:
- VPC フローログの生成料金は、Cloud Logging から Virtual Private Cloud フローログを送信して除外した後に適用されます。