Vérification du statut du déploiement - AWS IoT Greengrass

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.

Vérification du statut du déploiement

Vous pouvez vérifier le statut du déploiement que vous créez dansAWS IoT Greengrass. Vous pouvez également vérifier l'état desAWS IoT tâches qui déploient le déploiement sur chaque appareil principal. Tant qu'un déploiement est actif, le statut de laAWS IoT tâche estIN_PROGRESS. Une fois que vous avez créé une nouvelle révision d'un déploiement, le statut de laAWS IoT tâche de la révision précédente passe àCANCELLED.

Vérification du statut du déploiement

Vous pouvez vérifier l'état d'un déploiement que vous identifiez à l'aide de sa cible ou de son identifiant.

Pour vérifier l'état du déploiement par cible (AWS CLI)
  • Exécutez la commande suivante pour récupérer le statut du dernier déploiement pour une cible. Remplacez targetArn de l'Amazon Resource Name (ARN) duAWS IoT objet ou groupe d'objets cible du déploiement.

    aws greengrassv2 list-deployments --target-arn targetArn

    La réponse contient une liste du dernier déploiement pour la cible. Cet objet de déploiement inclut le statut du déploiement.

Pour vérifier l'état du déploiement par ID (AWS CLI)
  • Exécutez la commande suivante pour récupérer le statut d'un déploiement. Remplacez deploymentId par l'ID du déploiement à interroger.

    aws greengrassv2 get-deployment --deployment-id deploymentId

    La réponse contient le statut du déploiement.

Vérifier l'état du déploiement de l'appareil

Vous pouvez vérifier le statut d'une tâche de déploiement qui s'applique à un périphérique principal individuel. Vous pouvez également vérifier l'état d'une tâche de déploiement pour un déploiement de groupe d'objets.

Pour vérifier l'état des tâches de déploiement pour un périphérique principal (AWS CLI)
  • Exécutez la commande suivante pour récupérer le statut de toutes les tâches de déploiement pour un périphérique principal. Remplacez coreDeviceNamepar le nom du périphérique principal à interroger.

    aws greengrassv2 list-effective-deployments --core-device-thing-name coreDeviceName

    La réponse contient la liste des tâches de déploiement pour le périphérique principal. Vous pouvez identifier la tâche pour un déploiement en fonction de la tâchedeploymentId outargetArn. Chaque tâche de déploiement contient l'état de la tâche sur le périphérique principal.

Pour vérifier l'état du déploiement d'un groupe d'objets (AWS CLI)
  1. Exécutez la commande suivante pour récupérer l'ID d'un déploiement existant. Remplacez TargetArn de l'objet cible.

    aws greengrassv2 list-deployments --target-arn targetArn

    La réponse contient une liste du dernier déploiement pour la cible. Copiez ledeploymentId formulaire de la réponse pour l'utiliser lors de l'étape suivante.

    Note

    Vous pouvez également répertorier un déploiement autre que le dernier déploiement pour la cible. Spécifiez l'--history-filter ALLargument pour répertorier tous les déploiements pour la cible. Copiez ensuite l'ID du déploiement dont vous souhaitez vérifier l'état.

  2. Exécutez la commande suivante pour obtenir les détails du déploiement. Remplacez DeploymentId de l'ID de l'étape précédente.

    aws greengrassv2 get-deployment --deployment-id deploymentId

    La réponse contient des informations sur le déploiement. Copiez leiotJobId formulaire de la réponse à utiliser à l'étape suivante.

  3. Exécutez la commande suivante pour décrire l'exécution de la tâche d'un périphérique principal pour le déploiement. Remplacez iotJobIdet coreDeviceThingNommez par l'ID de tâche de l'étape précédente et le périphérique principal dont vous souhaitez vérifier l'état.

    aws iot describe-job-execution --job-id iotJobId --thing-name coreDeviceThingName

    La réponse contient l'état d'exécution de la tâche de déploiement du périphérique principal et des détails sur cet état. LedetailsMap contient les informations suivantes :

    • detailed-deployment-status— L'état du résultat du déploiement, qui peut comporter l'une des valeurs suivantes :

      • SUCCESSFUL— Le déploiement a réussi.

      • FAILED_NO_STATE_CHANGE— Le déploiement a échoué alors que le périphérique principal se préparait à appliquer le déploiement.

      • FAILED_ROLLBACK_NOT_REQUESTED— Le déploiement a échoué et le déploiement n'a pas spécifié de restauration d'une configuration fonctionnelle précédente. Il se peut donc que le périphérique principal ne fonctionne pas correctement.

      • FAILED_ROLLBACK_COMPLETE— Le déploiement a échoué et le périphérique principal est revenu avec succès à une configuration fonctionnelle précédente.

      • FAILED_UNABLE_TO_ROLLBACK— Le déploiement a échoué et le périphérique principal n'a pas pu revenir à une configuration fonctionnelle précédente. Il se peut donc que le périphérique principal ne fonctionne pas correctement.

      Si le déploiement a échoué, vérifiez ladeployment-failure-cause valeur et les fichiers journaux du périphérique principal pour identifier le problème. Pour en savoir plus sur l'accès aux fichiers journaux du périphérique principal, consultezAWS IoT GreengrassJournaux de surveillance.

    • deployment-failure-cause— Message d'erreur fournissant des informations supplémentaires sur les raisons de l'échec de l'exécution de la tâche.

    La réponse ressemble à l'exemple suivant.

    { "execution": { "jobId": "2cc2698a-5175-48bb-adf2-1dd345606ebd", "status": "FAILED", "statusDetails": { "detailsMap": { "deployment-failure-cause": "No local or cloud component version satisfies the requirements. Check whether the version constraints conflict and that the component exists in your Compte AWS with a version that matches the version constraints. If the version constraints conflict, revise deployments to resolve the conflict. Component com.example.HelloWorld version constraints: LOCAL_DEPLOYMENT requires =1.0.0, thinggroup/MyGreengrassCoreGroup requires =1.0.1.", "detailed-deployment-status": "FAILED_NO_STATE_CHANGE" } }, "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "queuedAt": "2022-02-15T14:45:53.098000-08:00", "startedAt": "2022-02-15T14:46:05.670000-08:00", "lastUpdatedAt": "2022-02-15T14:46:20.892000-08:00", "executionNumber": 1, "versionNumber": 3 } }