除外フィルタを使用すると、Cloud Logging によって取り込まれる Google Kubernetes Engine(GKE)ログの量を制御しながら、デバッグで詳細ログを使用できます。除外フィルタを使用すると、一致するログエントリの Cloud Logging による取り込みや、シンクの宛先への転送を防ぐことができます。
除外フィルタは、Logging のクエリ言語を使用して作成します。
ログエントリは、Logging API によって受信された後に除外されるため、これらのログエントリは entries.write
API 割り当てを消費します。ログエントリを除外して entries.write
API 呼び出しの数を減らすことはできません。
除外されたログエントリは、ログ エクスプローラや Error Reporting では使用できません。
取り込みデータを表示する方法については、Metrics Explorer で詳細な使用状況を表示するをご覧ください。
始める前に
作業を始める前に、次のことを確認してください。
- Google Kubernetes Engine API を有効にする。 Google Kubernetes Engine API の有効化
- このタスクに Google Cloud CLI を使用する場合は、gcloud CLI をインストールして初期化する。すでに gcloud CLI をインストールしている場合は、
gcloud components update
を実行して最新のバージョンを取得する。
- ログ エクスプローラに表示できるログを持つ Google Cloud プロジェクトがあることを確認します。
権限
ログの転送元となる Google Cloud プロジェクトについて、次のいずれかの IAM ロールを付与されている。
- オーナー(
roles/owner
) - Logging 管理者(
roles/logging.admin
) - ログ構成書き込み(
roles/logging.configWriter
)
これらのロールに含まれる権限を使用して、シンクの作成、削除、変更ができます。IAM ロールの設定については、Logging のアクセス制御ガイドをご覧ください。
除外フィルタを追加する
次の手順では、ログを Default
Cloud Logging バケットへの取り込みから除外する Cloud Logging 除外フィルタを追加する方法について説明します。
Google Cloud コンソールで、[ログルーター] ページに移動します。
_Default
シンクのある行を見つけて、 その他の操作オプションを開き、[シンクを編集] をクリックします。[シンクに含めないログの選択] で、[除外フィルタの作成] の
[除外設定を追加] をクリックします。除外フィルタの名前を入力します。
[除外フィルタの作成] セクションで、フィルタ条件を入力します。たとえば、クラスタのログエントリや、コンテナの特定のログエントリを除外できます。
特定のクラスタのすべてのログエントリを除外します。
resource.labels.cluster_name="CLUSTER_NAME"
特定のクラスタ内の特定のコンテナのログ重大度が
DEFAULT
、DEBUG
、INFO
、またはNOTICE
のログエントリを除外します。resource.type="k8s_container" resource.labels.container_name="CONTAINER_NAME" resource.labels.cluster_name="CLUSTER_NAME" severity=(DEFAULT OR DEBUG OR INFO OR NOTICE)
[シンクを更新] をクリックします。
追加したフィルタでログを除外するように、_Default
シンクが構成されました。
次のステップ
- 詳しくは、除外フィルタをご覧ください。