Container-Optimized OS での Cloud Logging の使用

Container-Optimized OS には milestone 67 以降、Google Cloud のオペレーション スイートのLogging エージェントが含まれています。この Logging エージェントによって、システムログとコンテナログが Cloud Logging にエクスポートされます。詳細については、Container-Optimized OS 固有の構成ソース、または Google Cloud のオペレーション スイートのドキュメントをご覧ください。このドキュメントでは、Container-Optimized OS でロギング エージェントを使用する方法とログにアクセスする方法を説明します。

ロギング エージェントを有効にして新しいインスタンスを作成する

コンソール

ロギング エージェントを有効にした状態でContainer-Optimized OS 上で Compute Engine インスタンスを実行するには、以下を実行します。

  1. Google Cloud Console で Compute Engine インスタンス作成ページを開きます。

    新しい Compute Engine インスタンスの作成

  2. [名前] でインスタンスの名前を指定します。

  3. [ブートディスク] セクションで、Container-Optimized OS イメージを選択します。

  4. [管理、セキュリティ、ディスク、ネットワーク、単一テナンシー] をクリックして、追加のオプションを展開します。

  5. [管理] タブで、[メタデータ] セクションまでスクロールします。Keygoogle-logging-enabledValuetrue として新しいメタデータ エントリを追加します。

  6. 必要に応じて、ユースケースのその他のオプションを指定します。詳しくは、インスタンスの作成と構成をご覧ください。

  7. [作成] をクリックし、インスタンスを作成して起動します。

gcloud

ロギング エージェントを有効にして、Container-Optimized OS で Compute Engine インスタンスを実行するには、gcloud compute instances create コマンドを使用し、google-logging-enabled=true をメタデータに含めます。次に例を示します。

gcloud compute instances create instance-name \
    --image-family cos-stable \
    --image-project cos-cloud \
    --zone compute-zone \
    --metadata google-logging-enabled=true

以下を置き換えます。

gcloud コマンドの詳細については、gcloud compute instances create のリファレンス ドキュメントをご覧ください。 Container-Optimized OS インスタンスの作成の詳細については、インスタンスの作成と構成をご覧ください。

既存のインスタンスを更新して、ロギング エージェントを有効または無効にする

コンソール

  1. [VM インスタンス] ページに移動します。

    [VM インスタンス] ページに移動

  2. 更新する Container-Optimized OS インスタンスの名前をクリックします。

  3. 上部の [VM インスタンスの詳細] から [編集] をクリックします。

  4. [カスタム メタデータ] セクションで新しいメタデータ エントリを追加し、キーgoogle-logging-enabled に設定します。有効にするにはtrue に、無効にするには false に設定します。

  5. [保存] をクリックします。

gcloud

既存のインスタンスでロギング エージェントを有効または無効にするには、gcloud compute instances add-metadata コマンドを使用します。

gcloud compute instances add-metadata instance-name \
    --zone compute-zone \
    --metadata google-logging-enabled=enabled-value

以下を置き換えます。

  • enabled-value: 有効にするには true に、無効にするには false に設定します。
  • instance-name: VM インスタンスの名前。
  • compute-zone:インスタンスのコンピューティング ゾーン

ログへのアクセス

コンソール

  1. [VM インスタンス] ページに移動します。

    [VM インスタンス] ページに移動

  2. ログのアクセス元である Container-Optimized OS インスタンスの名前をクリックします。

  3. [ログ] セクションで、[Cloud Logging] をクリックします。

  4. これにより、指定したインスタンスのログ エクスプローラが開きます。詳細については、Logs Explorer の使用をご覧ください。

gcloud

ログにアクセスするには、gcloud logging read コマンドを使用します。次に例を示します。

gcloud logging read \
"resource.type=gce_instance AND resource.labels.instance_id=instance-id" \
    --limit 10 \
    --format json \
    --freshness 30d

以下を置き換えます。

  • instance-id: VM インスタンスの ID。

このコマンドは、instance-id を使用して VM インスタンスからログを読み取ろうとします。この際、過去 30 日間の JSON 形式の 10 件のログに限定されます。

gcloud コマンドの詳細については、gcloud logging read のリファレンス ドキュメントをご覧ください。