web-dev-qa-db-fra.com

Filtrer par requête d'horodatage sur AWS Cloudwatch Logs Insights

J'essaie d'utiliser les informations AWS Cloudwatch Logs afin de rechercher dans certains journaux assez anciens de nos fonctions lambda. Je lis ce guide sur les documents AWS , mais nulle part n'est documenté comment vous pouvez filtrer par horodatage. J'ai essayé ce qui suit:

fields @timestamp, @message
| filter @timestamp > '2019-12-04T18:09:10.000+01:00'
| limit 200
| sort @timestamp desc

mais ne fonctionne pas (renvoie 0 résultat).

Au départ, j'essayais de savoir s'il existe un moyen de trier les groupes de journaux par une colonne d'horodatage (au lieu de la valeur par défaut qui est le nom du groupe de journaux), lorsque je suis tombé sur cette demande de fonctionnalité depuis 2015 = - ce n'est pas résolu dans eu-west-1 et ils suggèrent d'utiliser les nouvelles informations de journal, mais je ne peux pas faire fonctionner cela.

Quelqu'un sait-il comment je peux filtrer les journaux par horodatage, ou si cela est même possible avec les insights des journaux Cloudwatch?

Merci!

6
babis21

Le filtrage sur l'horodatage est effectué avec le sélecteur de plage en haut à droite dans la console Logs Insights ou avec les paramètres startTime et endTime sur API StartQuery .

Vous pouvez effectuer un filtrage supplémentaire en utilisant des valeurs d'horodatage en millisecondes (voir ci-dessous pour un exemple), mais la plage globale doit toujours être plus large que ce que vous utilisez dans la requête elle-même.

fields @timestamp, @message
| fields tomillis(@timestamp) as millis
| filter millis > 1578182400000  # Sunday, 5. January 2020 0:00:00
     and millis < 1578268800000  # Sunday, 6. January 2020 0:00:00
6
Dejan Peretin