web-dev-qa-db-ja.com

AWS Log Insightsとは異なるクエリをクエリする方法

AWS CloudWatch Log Insightsを使用して、Lambdaからデータを照会する必要があります。 AWSによって提供されるクエリの構文は明確にはありません。

サポートのみ(count_distinct(fieldName))

参考文献 https://docs.aws.amazon.com/amazoncloudwatch/latest/logs/cwl_querysyntax.html

データ例データ

列#@timestamp @メッセージ

1 2020-02-17T13:33:29.049 + 07:00 [情報] 2020パーティションキー:ABC12345_A_

22020-02-17T11:32:29.049 + 07:00 [情報] 2020パーティションキー:ABC12345_B_

3 2020-02-17T11:31:29.049 + 07:00 [情報] 2020パーティションキー:ABC12345_B_

4 2020-02-17T11:30:29.049 + 07:00 [情報] 2020パーティションキー:ABC12345_C_

5 2020-02-17t11:29:29.049 + 07:00 [情報] 2020パーティションキー:ABC12345_A_

予想される結果

1 2020-02-17T13:33:29.049 + 07:00 [情報] 2020パーティションキー:ABC12345_A_

22020-02-17T11:32:29.049 + 07:00 [情報] 2020パーティションキー:ABC12345_B_

4 2020-02-17T11:30:29.049 + 07:00 [情報] 2020パーティションキー:ABC12345_C_

使用法通常のSQL構文が以下のようになります。

uUID(Time)からDISTINCT(UUID)をTABLE_NAMEグループからの時間としてMAX(TIME)をTIME DESCで順に選択

6
PKS

statsコマンドの非集約関数以下のようなものです。

stats latest(@timestamp) as @latestTimestamp by @message
| display @latestTimestamp, @message
 _
3
easywaru

| .. |を使うことができますstats count(*)によってfieldName

これは異なるフィールド名をリストするように機能します

1
sunvenka