ログのフィルター処理
Query and filter your structured logs using a custom query language with operators and boolean expressions.
読み終わるまでの所要時間 1 分最終更新 23日前
ロギングサービスは、構造化されたログを簡単にフィルター処理できるカスタムクエリ言語をサポートします。このセクションでは、クエリ言語の構文と使用方法を説明し、開始に役立ついくつかの例を提供します。
基本的な構文と演算子
フィルタークエリは、1 つ以上の条件から構成されます。条件の基本構文は、以下のコンポーネントから構成されます。コンポーネント | 条件 |
|---|---|
| フィールド | フィルター処理する |
| 演算子 | サポートされる演算子の 1 つ。以下の演算子の表を参照してください。 |
| 値 | フィールドと比較する値。 |
演算子 | 意味 |
|---|---|
| 等しい |
| 等しくない |
| 含む ( |
| 含まない ( |
| より大きい |
| より小さい |
| 以下 |
| 以上 |
ブーリアン式とグループ化
ブーリアン式とかっこを使用したグループ化を使用して、複雑なフィルタークエリを作成できます。これにより、複数の条件を組み合わせて正確なフィルターを作成できます。ブーリアン式 | 意味 |
|---|---|
| 両辺の条件が両方とも true である必要があります。 |
| 両辺の条件の少なくとも 1 つが true である必要があります。 |
| グループ化 | かっこ ( と ) を使用して式をグループ化し、評価の順序をコントロールします。 |
ANDフィルタークエリの例
特定の重大度レベルのすべてのログを選択します。特定の重大度レベルより上のすべてのログを Cloud Code から選択します (改行は AND として扱われます)。severityText = "ERROR"
メッセージ内の特定の単語を含むログを除外します。resourceAttributes.service.name = "cloud-code"severityNumber >= 12
複数の条件とグループ化を組み合わせます (重大度のエイリアスを使用)。body !~= "healthcheck"
(logAttributes.event.name = "example-event" AND body ~= "timeout") OR (logAttributes.custom.counter > 9000 AND severity = "WARN")
ノート
以下のノートは、フィルタークエリ言語に適用されます。- 利便性のために フィールドも
severityTextとしてエイリアス化されますseverity - ファジーマッチ演算子 (
= と !=) はフィールドでのみサポートされますbody - キーでは大文字と小文字が区別されます
logAttributes - 値は自動的に文字列に変換されます
logAttributes