Référence : Création de chaînes de date et d'heure formatées pour Systems Manager - AWS Systems Manager

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Référence : Création de chaînes de date et d'heure formatées pour Systems Manager

AWS Systems Manager APIles opérations acceptent des filtres pour limiter le nombre de résultats renvoyés par une demande. Certaines de ces API opérations acceptent les filtres qui nécessitent une chaîne formatée pour représenter une date et une heure spécifiques. Par exemple, l'DescribeSessionsAPIopération accepte les InvokedBefore touches InvokedAfter et comme valeurs valides pour un SessionFilter objet. Un autre exemple est l'DescribeAutomationExecutionsAPIopération, qui accepte les StartTimeAfter touches StartTimeBefore et comme valeurs valides pour un AutomationExecutionFilter objet. Les valeurs que vous fournissez pour ces clés lors du filtrage de vos demandes doivent correspondre à la norme ISO 8601. Pour plus d'informations sur le ISO 8601, voir ISO8601.

Ces chaînes de date et d'heure formatées ne sont pas limitées aux filtres. Certaines API opérations nécessitent également une chaîne au format ISO 8601 pour représenter une date et une heure spécifiques lors de la fourniture d'une valeur pour un paramètre de demande. Par exemple, le paramètre de demande AtTime pour l'opération GetCalendarState. Ces chaînes sont difficiles à créer. Utilisez les exemples présentés dans cette rubrique pour créer des chaînes de date et d'heure formatées à utiliser avec les API opérations de Systems Manager.

Mise en forme de chaînes de date et d'heure pour Systems Manager

Voici un exemple de chaîne de date et d'heure au format ISO 8601.

2024-05-08T15:16:43Z

Cela représente le 8 mai 2024 à 15 h 16, temps universel coordonné (UTC). La partie date calendaire de la chaîne est représentée par une année à quatre chiffres, un mois à deux chiffres et un jour à deux chiffres séparés par des tirets. Voici le format.

YYYY-MM-DD

La partie heure de la chaîne est délimitée par la lettre « T » (pour Time). Elle est représentée par la valeur des heures sur deux chiffres, la valeur des minutes sur deux chiffres et la valeur des secondes sur deux chiffres, séparées par deux points. Voici le format.

hh:mm:ss

La partie temporelle de la chaîne se termine par la lettre « Z », qui indique la UTC norme.

Création de chaînes de date et d'heure personnalisées pour Systems Manager

Vous pouvez créer des chaînes de date et d'heure personnalisées à partir de votre machine locale à l'aide de votre outil de ligne de commande préféré. La syntaxe que vous utilisez pour créer une chaîne de date et d'heure au format ISO 8601 varie en fonction du système d'exploitation de votre machine locale. Voici des exemples de la façon dont vous pouvez utiliser les coreutils date de GNU from sous Linux ou PowerShell Windows pour créer une chaîne de date et d'heure au format ISO 8601.

coreutils
date '+%Y-%m-%dT%H:%M:%SZ'
PowerShell
(Get-Date).ToString("yyyy-MM-ddTH:mm:ssZ")

Lorsque vous travaillez avec les API opérations de Systems Manager, vous devrez peut-être créer des chaînes de date et d'heure historiques à des fins de reporting ou de dépannage. Vous trouverez ci-dessous des exemples de création et d'utilisation de chaînes de date et d'heure personnalisées au format ISO 8601 historiques pour le AWS Tools for PowerShell et AWS Command Line Interface ()AWS CLI.

AWS CLI
  • Récupérez l'historique des commandes de la dernière semaine pour un SSM document.

    lastWeekStamp=$(date '+%Y-%m-%dT%H:%M:%SZ' -d '7 days ago') docFilter='{"key":"DocumentName","value":"AWS-RunPatchBaseline"}' timeFilter='{"key":"InvokedAfter","value":'\"$lastWeekStamp\"'}' commandFilters=[$docFilter,$timeFilter] aws ssm list-commands \ --filters $commandFilters
  • Récupérer la dernière semaine de l'historique d'exécution de l'automatisation.

    lastWeekStamp=$(date '+%Y-%m-%dT%H:%M:%SZ' -d '7 days ago') aws ssm describe-automation-executions \ --filters Key=StartTimeAfter,Values=$lastWeekStamp
  • Récupérer le dernier mois de l'historique de session.

    lastWeekStamp=$(date '+%Y-%m-%dT%H:%M:%SZ' -d '30 days ago') aws ssm describe-sessions \ --state History \ --filters key=InvokedAfter,value=$lastWeekStamp
AWS Tools for PowerShell
  • Récupérez l'historique des commandes de la dernière semaine pour un SSM document.

    $lastWeekStamp = (Get-Date).AddDays(-7).ToString("yyyy-MM-ddTH:mm:ssZ") $docFilter = @{ Key="DocumentName" Value="AWS-InstallWindowsUpdates" } $timeFilter = @{ Key="InvokedAfter" Value=$lastWeekStamp } $commandFilters = $docFilter,$timeFilter Get-SSMCommand ` -Filters $commandFilters
  • Récupérer la dernière semaine de l'historique d'exécution de l'automatisation.

    $lastWeekStamp = (Get-Date).AddDays(-7).ToString("yyyy-MM-ddTH:mm:ssZ") Get-SSMAutomationExecutionList ` -Filters @{Key="StartTimeAfter";Values=$lastWeekStamp}
  • Récupérer le dernier mois de l'historique de session.

    $lastWeekStamp = (Get-Date).AddDays(-30).ToString("yyyy-MM-ddTH:mm:ssZ") Get-SSMSession ` -State History ` -Filters @{Key="InvokedAfter";Value=$lastWeekStamp}