

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# pattern
<a name="CWL_QuerySyntax-Pattern"></a>

 `pattern` を使用してログデータを自動的にパターンにクラスター化します。

パターンは、ログフィールド間で繰り返される共有テキスト構造です。`pattern` を使用して新たな傾向を発見することや既知のエラーをモニタリングすることに加えて、頻繁に発生するログラインやコストの高いログラインを特定することができます。CloudWatch Logs Insights は、ログイベント内のパターンを検索してさらに分析するために使用できるコンソールエクスペリエンスも提供します。詳細については、「[パターン分析](CWL_AnalyzeLogData_Patterns.md)」を参照してください。

`pattern` コマンドは一般的なパターンを自動的に識別するため、ログを検索して分析するための出発点として使用できます。また、`pattern` を ` filter`、` parse`、または ` sort` コマンドと組み合わせて、より微調整されたクエリでパターンを識別することもできます。

**パターンコマンド入力**

 `pattern` コマンドでは、`@message` フィールド、` parse` コマンドを使用して作成された抽出フィールド、または 1 つ以上の [String 関数](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax-operations-functions.html#CWL_QuerySyntax-string-functions)を使用して操作された文字列のいずれかの入力が予期されます。

CloudWatch Logs が動的トークンの表すデータのタイプを推測できない場合は、<トークン - *数値*> として表示され、*数値*は他の動的トークンと比較して、このトークンがパターン内のどこに表示されるかを示します。

動的トークンの一般的な例には、エラーコード、IP アドレス、タイムスタンプ、リクエスト ID があります。

**パターンコマンド出力**

 `pattern` コマンドは以下の出力を生成します。
+ `@pattern`: ログイベントフィールド間で繰り返される共有テキスト構造。リクエスト ID やタイムスタンプなど、パターン内の異なるフィールドは*トークン*によって表現されます。CloudWatch Logs が動的トークンの表すデータのタイプを判断できる場合、トークンは `<string-number>` として表示されます。*文字列*は、トークンが表すデータのタイプの説明です。*数値*は、他の動的トークンと比較して、このトークンがパターン内のどこに表示されるかを示します。

  CloudWatch Logs は、名前を含むログイベントのコンテンツの分析に基づいて、その名前の文字列部分を割り当てます。

  CloudWatch Logs が動的トークンの表すデータのタイプを推測できない場合は、<トークン - *数値*> として表示され、*数値*は他の動的トークンと比較して、このトークンがパターン内のどこに表示されるかを示します。

  例えば、`[INFO] Request time: <Time-1> ms` はログメッセージ `[INFO] Request time: 327 ms` の出力候補です。
+ `@ratio`: 選択した期間のログイベントと、識別されたパターンに一致する特定のロググループのログイベントの割合。例えば、選択したロググループと期間のログイベントの半分がパターンと一致する場合、`@ratio` は `0.50` を返します。
+ `@sampleCount`: 選択した期間のログイベントと、識別されたパターンに一致する特定のロググループのログイベントの数。
+ `@severityLabel`: ログの重要度またはレベル。ログに含まれる情報の種類を示します。`Error`、`Warning`、`Info`、`Debug` などが該当します。

**例**

次のコマンドは、選択した時間範囲内の指定されたロググループ内の構造が似ているログを識別し、パターンと数でグループ化します。

```
pattern @message
```

`pattern` コマンドは ` filter` コマンドと組み合わせて使用できます

```
filter @message like /ERROR/
| pattern @message
```

`pattern` コマンドは、` parse` および ` sort` コマンドと共に使用できます。

```
filter @message like /ERROR/
| parse @message 'Failed to do: *' as cause
| pattern cause
| sort @sampleCount asc
```