Necesito consultar datos de lambda utilizando información de registro de AWS Cloudwatch. La sintaxis de consulta proporcionada por aws no tiene distinciones.
Solo soporte (count_distinct(fieldname))
árbitro. https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html
Datos de ejemplo
Columna # @timestamp @ mensaje
1 2020-02-17T13:33:29.049+07:00 [INFO] 2020 Clave de partición: ABC12345_A_
2 2020-02-17T11:32:29.049+07:00 [INFO] 2020 Clave de partición: ABC12345_B_
3 2020-02-17T11:31:29.049+07:00 [INFO] 2020 Clave de partición: ABC12345_B_
4 2020-02-17T11:30:29.049+07:00 [INFO] 2020 Clave de partición: ABC12345_C_
5 2020-02-17T11:29:29.049+07:00 [INFO] 2020 Clave de partición: ABC12345_A_
Resultado Esperado
1 2020-02-17T13:33:29.049+07:00 [INFO] 2020 Clave de partición: ABC12345_A_
2 2020-02-17T11:32:29.049+07:00 [INFO] 2020 Clave de partición: ABC12345_B_
4 2020-02-17T11:30:29.049+07:00 [INFO] 2020 Clave de partición: ABC12345_C_
Si el uso de la sintaxis SQL normal se ve como a continuación.
seleccione distinto (uuid) como uuid, max (tiempo) como tiempo del grupo table_name por orden uuid por tiempo desc
puede usar el | recuento de estadísticas (*) por nombre de campo
esto funciona para enumerar los distintos nombres de campo
Puede usar funciones de no agregación en el comando de estadísticas como se muestra a continuación
stats latest(@timestamp) as @latestTimestamp by @message | display @latestTimestamp, @message