

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.

# Surveiller la progression de la pile
<a name="monitor-stack-progress"></a>

Cette section décrit comment surveiller un déploiement de stack en cours. CloudFormation fournit une liste chronologique détaillée des événements de déploiement, indiquant la progression et les éventuels problèmes rencontrés au cours du déploiement.

**Topics**
+ [Afficher les événements de la pile](view-stack-events.md)
+ [Afficher les événements de la pile par opération](view-stack-events-by-operation.md)
+ [Afficher le graphique de la chronologie du déploiement de la pile](stack-deployment-timeline-graph.md)
+ [Comprendre les événements de création de pile](stack-resource-configuration-complete.md)
+ [Surveiller les mises à jour de pile](using-cfn-updating-stacks-monitor-stack.md)
+ [

# Poursuite de la restauration d'une mise à jour
](using-cfn-updating-stacks-continueupdaterollback.md)
+ [

# Détermination de la cause d’un échec de pile
](determine-root-cause-for-stack-failures.md)
+ [Options d’échec de pile](stack-failure-options.md)

# Afficher les événements CloudFormation liés à la pile
<a name="view-stack-events"></a>

Vous pouvez afficher les événements de pile pour surveiller la progression et l’état de votre pile et des ressources qu’elle contient. Les événements de pile vous aident à comprendre quand les ressources sont créées, mises à jour ou supprimées, et si le déploiement de la pile se déroule comme prévu. 

**Topics**
+ [

## Afficher les événements de pile (console)
](#view-stack-events-console)
+ [

## Afficher les événements de la pile (AWS CLI)
](#view-stack-events-cli)
+ [

## Codes d’état de la pile
](#cfn-console-view-stack-data-resources-status-codes)

## Afficher les événements de pile (console)
<a name="view-stack-events-console"></a>

**Pour afficher les événements de pile**

1. Ouvrez la CloudFormation console à l'adresse [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

1. Dans la barre de navigation située en haut de l’écran, choisissez la Région AWS dans laquelle vous avez créé la pile.

1. Sur la page **Stacks** de la CloudFormation console, sélectionnez le nom de la pile. CloudFormation affiche les détails de la pile sélectionnée.

1. Choisissez l'onglet **Événements** pour afficher les événements CloudFormation de pile générés pour votre pile. 

CloudFormation actualise automatiquement les événements de la pile toutes les minutes. CloudFormation Affiche également le badge **Nouveaux événements disponibles** lorsque de nouveaux événements de pile se produisent. Sélectionnez l’icône d’actualisation pour charger ces événements dans la liste. En regardant les événements de création de la pile, vous pouvez comprendre la séquence d’événements qui conduit à sa création (ou à son échec, si vous êtes en phase de débogage).

Lorsque la pile est en cours de création, elle est répertoriée sur la page **Piles** avec le statut `CREATE_IN_PROGRESS`. Une fois que la pile a été créée avec succès, son statut passe à `CREATE_COMPLETE`.

Pour plus d’informations, consultez [Comprendre les événements de création de CloudFormation piles](stack-resource-configuration-complete.md) et [Surveiller la progression d’une mise à jour de pile](using-cfn-updating-stacks-monitor-stack.md).

## Afficher les événements de la pile (AWS CLI)
<a name="view-stack-events-cli"></a>

Vous pouvez également utiliser la [describe-stack-events](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/describe-stack-events.html)commande lors de la création de la pile pour afficher les événements tels qu'ils sont signalés.

La commande **describe-stack-events** suivante décrit les événements de la pile `my-stack`.

```
aws cloudformation describe-stack-events --stack-name my-stack
```

Voici un exemple de réponse.

```
{
    "StackEvents": [
        {
            "StackId": "arn:aws:cloudformation:aws-region:123456789012:stack/my-stack/64726230-7edf-11f0-8a36-06453a64f325",
            "EventId": "7b755820-7edf-11f0-ab15-0673b09f3847",
            "StackName": "my-stack",
            "LogicalResourceId": "my-stack",
            "PhysicalResourceId": "arn:aws:cloudformation:aws-region:123456789012:stack/my-stack/64726230-7edf-11f0-8a36-06453a64f325",
            "ResourceType": "AWS::CloudFormation::Stack",
            "Timestamp": "2025-08-21T22:37:56.243000+00:00",
            "ResourceStatus": "CREATE_COMPLETE",
            "ClientRequestToken": "token"
        },
        {
            "StackId": "arn:aws:cloudformation:aws-region:123456789012:stack/my-stack/64726230-7edf-11f0-8a36-06453a64f325",
            "EventId": "WebServer-CREATE_COMPLETE-2025-08-21T22:37:54.356Z",
            "StackName": "my-stack",
            "LogicalResourceId": "WebServer",
            "PhysicalResourceId": "i-099df76cb31b866a9",
            "ResourceType": "AWS::EC2::Instance",
            "Timestamp": "2025-08-21T22:37:54.356000+00:00",
            "ResourceStatus": "CREATE_COMPLETE",
            "ResourceProperties": "{\"UserData\":\"IyEvYmluL2Jhc2gKeXVtIGluc3RhbGwgLXkgYXdzLWNmbi1ib290c3RyYXAKL29wdC9hd3MvYmluL2Nmbi1pbml0IC12IC0tc3RhY2sgc2Rmc2RhZnNhZHNka2wgLS1yZXNvdXJjZSBXZWJTZXJ2ZXIgLS1yZWdpb24gdXMtd2VzdC0yCg==\",\"ImageId\":\"ami-0bbc328167dee8f3c\",\"InstanceType\":\"t2.micro\",\"SecurityGroupIds\":[\"my-stack-WebServerSecurityGroup-n8A43bQT1ty2\"],\"Tags\":[{\"Value\":\"Bootstrap Tutorial Web Server\",\"Key\":\"Name\"}]}",
            "ClientRequestToken": "token"
        },
        {
            "StackId": "arn:aws:cloudformation:aws-region:123456789012:stack/my-stack/64726230-7edf-11f0-8a36-06453a64f325",
            "EventId": "WebServer-CREATE_IN_PROGRESS-2025-08-21T22:37:31.226Z",
            "StackName": "my-stack",
            "LogicalResourceId": "WebServer",
            "PhysicalResourceId": "i-099df76cb31b866a9",
            "ResourceType": "AWS::EC2::Instance",
            "Timestamp": "2025-08-21T22:37:31.226000+00:00",
            "ResourceStatus": "CREATE_IN_PROGRESS",
            "ResourceStatusReason": "Resource creation Initiated",
            "ResourceProperties": "{\"UserData\":\"IyEvYmluL2Jhc2gKeXVtIGluc3RhbGwgLXkgYXdzLWNmbi1ib290c3RyYXAKL29wdC9hd3MvYmluL2Nmbi1pbml0IC12IC0tc3RhY2sgc2Rmc2RhZnNhZHNka2wgLS1yZXNvdXJjZSBXZWJTZXJ2ZXIgLS1yZWdpb24gdXMtd2VzdC0yCg==\",\"ImageId\":\"ami-0bbc328167dee8f3c\",\"InstanceType\":\"t2.micro\",\"SecurityGroupIds\":[\"my-stack-WebServerSecurityGroup-n8A43bQT1ty2\"],\"Tags\":[{\"Value\":\"Bootstrap Tutorial Web Server\",\"Key\":\"Name\"}]}",
            "ClientRequestToken": "token"
        },
        {
            "StackId": "arn:aws:cloudformation:aws-region:123456789012:stack/my-stack/64726230-7edf-11f0-8a36-06453a64f325",
            "EventId": "WebServer-CREATE_IN_PROGRESS-2025-08-21T22:37:29.210Z",
            "StackName": "my-stack",
            "LogicalResourceId": "WebServer",
            "PhysicalResourceId": "",
            "ResourceType": "AWS::EC2::Instance",
            "Timestamp": "2025-08-21T22:37:29.210000+00:00",
            "ResourceStatus": "CREATE_IN_PROGRESS",
            "ResourceProperties": "{\"UserData\":\"IyEvYmluL2Jhc2gKeXVtIGluc3RhbGwgLXkgYXdzLWNmbi1ib290c3RyYXAKL29wdC9hd3MvYmluL2Nmbi1pbml0IC12IC0tc3RhY2sgc2Rmc2RhZnNhZHNka2wgLS1yZXNvdXJjZSBXZWJTZXJ2ZXIgLS1yZWdpb24gdXMtd2VzdC0yCg==\",\"ImageId\":\"ami-0bbc328167dee8f3c\",\"InstanceType\":\"t2.micro\",\"SecurityGroupIds\":[\"my-stack-WebServerSecurityGroup-n8A43bQT1ty2\"],\"Tags\":[{\"Value\":\"Bootstrap Tutorial Web Server\",\"Key\":\"Name\"}]}",
            "ClientRequestToken": "token"
        },
        {
            "StackId": "arn:aws:cloudformation:aws-region:123456789012:stack/my-stack/64726230-7edf-11f0-8a36-06453a64f325",
            "EventId": "WebServerSecurityGroup-CREATE_COMPLETE-2025-08-21T22:37:28.803Z",
            "StackName": "my-stack",
            "LogicalResourceId": "WebServerSecurityGroup",
            "PhysicalResourceId": "my-stack-WebServerSecurityGroup-n8A43bQT1ty2",
            "ResourceType": "AWS::EC2::SecurityGroup",
            "Timestamp": "2025-08-21T22:37:28.803000+00:00",
            "ResourceStatus": "CREATE_COMPLETE",
            "ResourceProperties": "{\"GroupDescription\":\"Allow HTTP access from my IP address\",\"SecurityGroupIngress\":[{\"CidrIp\":\"0.0.0.0/0\",\"Description\":\"HTTP\",\"FromPort\":\"80\",\"ToPort\":\"80\",\"IpProtocol\":\"tcp\"}]}",
            "ClientRequestToken": "token"
        },
        {
            "StackId": "arn:aws:cloudformation:aws-region:123456789012:stack/my-stack/64726230-7edf-11f0-8a36-06453a64f325",
            "EventId": "WebServerSecurityGroup-CREATE_IN_PROGRESS-2025-08-21T22:37:22.626Z",
            "StackName": "my-stack",
            "LogicalResourceId": "WebServerSecurityGroup",
            "PhysicalResourceId": "my-stack-WebServerSecurityGroup-n8A43bQT1ty2",
            "ResourceType": "AWS::EC2::SecurityGroup",
            "Timestamp": "2025-08-21T22:37:22.626000+00:00",
            "ResourceStatus": "CREATE_IN_PROGRESS",
            "ResourceStatusReason": "Resource creation Initiated",
            "ResourceProperties": "{\"GroupDescription\":\"Allow HTTP access from my IP address\",\"SecurityGroupIngress\":[{\"CidrIp\":\"0.0.0.0/0\",\"Description\":\"HTTP\",\"FromPort\":\"80\",\"ToPort\":\"80\",\"IpProtocol\":\"tcp\"}]}",
            "ClientRequestToken": "token"
        },
        {
            "StackId": "arn:aws:cloudformation:aws-region:123456789012:stack/my-stack/64726230-7edf-11f0-8a36-06453a64f325",
            "EventId": "WebServerSecurityGroup-CREATE_IN_PROGRESS-2025-08-21T22:37:20.186Z",
            "StackName": "my-stack",
            "LogicalResourceId": "WebServerSecurityGroup",
            "PhysicalResourceId": "",
            "ResourceType": "AWS::EC2::SecurityGroup",
            "Timestamp": "2025-08-21T22:37:20.186000+00:00",
            "ResourceStatus": "CREATE_IN_PROGRESS",
            "ResourceProperties": "{\"GroupDescription\":\"Allow HTTP access from my IP address\",\"SecurityGroupIngress\":[{\"CidrIp\":\"0.0.0.0/0\",\"Description\":\"HTTP\",\"FromPort\":\"80\",\"ToPort\":\"80\",\"IpProtocol\":\"tcp\"}]}",
            "ClientRequestToken": "token"
        },
        {
            "StackId": "arn:aws:cloudformation:aws-region:123456789012:stack/my-stack/64726230-7edf-11f0-8a36-06453a64f325",
            "EventId": "64740fe0-7edf-11f0-8a36-06453a64f325",
            "StackName": "my-stack",
            "LogicalResourceId": "my-stack",
            "PhysicalResourceId": "arn:aws:cloudformation:aws-region:123456789012:stack/my-stack/64726230-7edf-11f0-8a36-06453a64f325",
            "ResourceType": "AWS::CloudFormation::Stack",
            "Timestamp": "2025-08-21T22:37:17.819000+00:00",
            "ResourceStatus": "CREATE_IN_PROGRESS",
            "ResourceStatusReason": "User Initiated",
            "ClientRequestToken": "token"
        }
    ]
}
```

Les événements les plus récents apparaissent en premier. Le tableau suivant décrit les champs renvoyés par la commande **describe-stack-events** :


| Champ | Description | 
| --- | --- | 
| EventId |  Identifiant de l'événement.  | 
| StackName |  Nom de la pile à laquelle l’événement correspond.  | 
| StackId |  Identifiant de la pile à laquelle l’événement correspond.  | 
| LogicalResourceId |  Identifiant logique de la ressource.  | 
| PhysicalResourceId |  Identifiant physique de la ressource.  | 
| ResourceProperties |  Propriétés de la ressource.  | 
| ResourceType |  Type de ressource.  | 
| Timestamp |  Moment où l'événement est survenu.  | 
| ResourceStatus |  Le statut de la ressource, qui peut être l'un des codes d'état suivants : `CREATE_COMPLETE` `CREATE_FAILED` `CREATE_IN_PROGRESS` \$1 `DELETE_COMPLETE` \$1 `DELETE_FAILED` \$1 `DELETE_IN_PROGRESS` \$1 `DELETE_SKIPPED` \$1 `IMPORT_COMPLETE` \$1 `IMPORT_IN_PROGRESS` \$1 `IMPORT_ROLLBACK_COMPLETE` \$1 `IMPORT_ROLLBACK_FAILED` \$1 `IMPORT_ROLLBACK_IN_PROGRESS` \$1 `REVIEW_IN_PROGRESS` `ROLLBACK_COMPLETE` \$1 `ROLLBACK_FAILED` \$1 `ROLLBACK_IN_PROGRESS` \$1 `UPDATE_COMPLETE` \$1 `UPDATE_COMPLETE_CLEANUP_IN_PROGRESS` \$1 `UPDATE_FAILED` \$1 `UPDATE_IN_PROGRESS` \$1 `UPDATE_ROLLBACK_COMPLETE` \$1 `UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS` \$1 `UPDATE_ROLLBACK_FAILED` \$1 `UPDATE_ROLLBACK_IN_PROGRESS` L'état `DELETE_SKIPPED` s'applique aux ressources dont l'attribut de la politique de suppression correspond à « retain ».  | 
| DetailedStatus |  État détaillé de la pile. Si `CONFIGURATION_COMPLETE` est présent, la phase de configuration des ressources de la pile est terminée et la stabilisation des ressources est en cours.  | 
| ResourceStatusReason |  Plus d'informations sur cet état.  | 

## Codes d’état de la pile
<a name="cfn-console-view-stack-data-resources-status-codes"></a>

Le tableau suivant décrit les codes d’état d’une pile :


| État de la pile et statut détaillé facultatif | Description | 
| --- | --- | 
|  `CREATE_COMPLETE`  |  Réussite de la création d’une ou de plusieurs piles.  | 
|  `CREATE_IN_PROGRESS`  |  Création en cours d’une ou de plusieurs piles.  | 
|  `CREATE_FAILED`  |  Échec de la création d’une ou de plusieurs piles. Affichez les événements de la pile pour voir les messages d’erreur associés. Les raisons possibles d'un échec de création incluent des autorisations insuffisantes pour utiliser toutes les ressources de la pile, des valeurs de paramètres rejetées par un AWS service ou un délai d'attente lors de la création des ressources.  | 
|  `DELETE_COMPLETE`  |  Réussite de la suppression d’une ou de plusieurs piles. Les piles supprimées sont conservées et consultables pendant 90 jours.  | 
|  `DELETE_FAILED`  |  Échec de la suppression d’une ou de plusieurs piles. Comme la suppression a échoué, certaines ressources sont peut-être encore en cours d’exécution. Cependant, vous ne pouvez pas utiliser ni mettre à jour la pile. Supprimez la pile à nouveau ou consultez les événements correspondants pour voir les messages d’erreur associés.  | 
|  `DELETE_IN_PROGRESS`  |  Suppression en cours d’une ou de plusieurs piles.  | 
| `REVIEW_IN_PROGRESS` | Création continue d’une ou de plusieurs piles avec un StackId attendu, mais sans aucun modèle ni ressource. Une pile associée à ce code de statut est comptabilisée dans le [nombre maximal possible de piles](cloudformation-limits.md).  | 
|  `ROLLBACK_COMPLETE`  |  Réussite de la suppression d’une ou de plusieurs piles après un échec de création ou après l’annulation explicite de la création de la pile. La pile revient à son état de fonctionnement précédent. Toutes les ressources qui ont été créées au cours de l’action de création de la pile sont supprimées. Ce statut existe uniquement après un échec de création de la pile. Il signifie que toutes les opérations de la pile partiellement créée ont été correctement nettoyées. Dans ce cas-là, seule une opération de suppression peut être effectuée.  | 
|  `ROLLBACK_FAILED`  |  Échec de la suppression d’une ou de plusieurs piles après un échec de création ou après l’annulation explicite de la création de la pile. Supprimez la pile ou consultez les événements correspondants pour voir les messages d’erreur associés.  | 
|  `ROLLBACK_IN_PROGRESS`  |  Suppression en cours d’une ou de plusieurs piles après un échec de création ou après l’annulation explicite de la création de la pile.  | 
|  `UPDATE_COMPLETE`  | Réussite de la mise à jour d’une ou de plusieurs piles. | 
|  `UPDATE_COMPLETE_CLEANUP_IN_PROGRESS`  |  Suppression en cours d’anciennes ressources pour une ou plusieurs piles après une mise à jour réussie. Pour les mises à jour de pile qui nécessitent le remplacement de ressources, CloudFormation créez d'abord les nouvelles ressources, puis supprimez les anciennes ressources afin de réduire les interruptions de votre pile. Dans cet état, la pile a été mise à jour et est utilisable, mais les anciennes ressources CloudFormation sont toujours supprimées.  | 
|  `UPDATE_FAILED`  | Réussite de la mise à jour d’une ou de plusieurs piles. Affichez les événements de la pile pour voir les messages d’erreur associés. | 
|  `UPDATE_IN_PROGRESS`  |  Mise à jour en cours d’une ou de plusieurs piles.  | 
|  `UPDATE_ROLLBACK_COMPLETE`  |  Réussite de la restauration de l’état de fonctionnement d’une ou plusieurs piles après un échec de mise à jour.  | 
|  `UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS`  |  Suppression en cours des nouvelles ressources d’une ou de plusieurs piles après un échec de mise à jour. Dans cet état, la pile a été rétablie à son état de fonctionnement précédent et est utilisable, mais CloudFormation les nouvelles ressources créées lors de la mise à jour de la pile sont toujours supprimées.  | 
|  `UPDATE_ROLLBACK_FAILED`  |  Échec de la restauration de l’état de fonctionnement d’une ou plusieurs piles après un échec de mise à jour. Dans ce cas là, vous pouvez supprimer la pile ou [poursuivre la restauration](using-cfn-updating-stacks-continueupdaterollback.md). Vous devrez peut-être corriger les erreurs avant que votre pile puisse revenir à un état de fonctionnement. Vous pouvez également contacter Support pour restaurer la pile dans un état utilisable.  | 
|  `UPDATE_ROLLBACK_IN_PROGRESS`  |  Restauration en cours de l’état de fonctionnement d’une ou plusieurs piles après un échec de mise à jour.  | 
|  `IMPORT_IN_PROGRESS`  |  L'opération d'importation est en cours.  | 
|  `IMPORT_COMPLETE`  |  L’opération d’importation a été exécutée avec succès pour toutes les ressources de la pile qui prennent en charge `resource import`.  | 
|  `IMPORT_ROLLBACK_IN_PROGRESS`  |  L'importation sera restaurée à la configuration précédente du modèle.  | 
|  `IMPORT_ROLLBACK_FAILED`  |  L’opération de restauration de l’importation a échoué pour au moins une ressource de la pile. Les résultats seront disponibles pour les ressources importées CloudFormation avec succès.  | 
|  `IMPORT_ROLLBACK_COMPLETE`  |  L'importation a été restaurée avec succès à la configuration du modèle précédente.  | 

# Afficher les événements de la pile par opération
<a name="view-stack-events-by-operation"></a>

Vous pouvez consulter les événements de la pile regroupés par opération afin de mieux comprendre la séquence et l'étendue des modifications apportées à votre pile. Le regroupement basé sur les opérations vous permet de suivre ensemble les événements connexes, ce qui facilite le suivi des progrès et la résolution des problèmes lorsqu'ils surviennent.

Chaque opération de pile (création, mise à jour, suppression, annulation) se voit attribuer un identifiant d'opération unique qui regroupe tous les événements connexes. Cela vous permet de vous concentrer sur des opérations spécifiques et d'identifier rapidement la cause première des défaillances.

**Topics**
+ [

## Conditions préalables
](#view-stack-events-by-operation-prerequisites)
+ [

## Afficher les événements de la pile par opération (console)
](#view-stack-events-by-operation-console)
+ [

## Afficher les événements de la pile par opération (AWS CLI)
](#view-stack-events-by-operation-cli)
+ [

## Codes d’état de la pile
](#stack-status-codes)

## Conditions préalables
<a name="view-stack-events-by-operation-prerequisites"></a>

Pour utiliser `DescribeEvents` l'API, vous devez disposer des autorisations IAM nécessaires pour :`DescribeEvents`.

## Afficher les événements de la pile par opération (console)
<a name="view-stack-events-by-operation-console"></a>

**Pour afficher les événements de la pile regroupés par opération**

1. Connectez-vous à la CloudFormation console AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

1. Dans la barre de navigation en haut de l'écran, choisissez l'option dans Région AWS laquelle vous avez créé la pile.

1. Sur la page **Stacks**, sélectionnez le nom de la pile. CloudFormationaffiche les détails de la pile sélectionnée.

1. Choisissez l'onglet **Événements** pour afficher les événements CloudFormation de pile générés pour votre pile.

1. Les événements sont automatiquement regroupés par ID d'opération. Chaque opération apparaît sous la forme d'une section extensible indiquant le type, le statut et l'horodatage de l'opération.

1. Cliquez sur un **ID d'opération** pour ouvrir une vue détaillée affichant uniquement les événements liés à cette opération spécifique.

1. Dans la vue détaillée des opérations, cochez la case **Afficher les échecs uniquement** pour afficher uniquement les événements ayant échoué à des fins d'analyse des causes premières.

CloudFormation actualise automatiquement les événements de la pile toutes les minutes. Le badge **Nouveaux événements disponibles** apparaît lorsque de nouveaux événements de pile se produisent. Sélectionnez l’icône d’actualisation pour charger ces événements dans la liste.

En visualisant les événements de la pile regroupés par opération, vous pouvez comprendre la séquence des événements pour chaque opération et identifier rapidement l'opération spécifique à l'origine des problèmes (si vous êtes en train de déboguer votre pile).

Lorsque votre opération de stack est en cours d'exécution, elle est répertoriée avec un statut de `CREATE_IN_PROGRESS``UPDATE_IN_PROGRESS`, ou`DELETE_IN_PROGRESS`. Une fois votre opération terminée avec succès, son statut passe à `CREATE_COMPLETE``UPDATE_COMPLETE`, ou`DELETE_COMPLETE`.

Pour plus d’informations, consultez [Comprendre les événements de création de CloudFormation piles](stack-resource-configuration-complete.md) et [Surveiller la progression d’une mise à jour de pile](using-cfn-updating-stacks-monitor-stack.md).

## Afficher les événements de la pile par opération (AWS CLI)
<a name="view-stack-events-by-operation-cli"></a>

Vous pouvez utiliser la `describe-events` commande avec le filtrage des identifiants d'opération pour afficher les événements relatifs à des opérations spécifiques.

### Obtenir la dernière opération IDs
<a name="get-last-operation-ids"></a>

La description de la pile disponible via l'API describe-stacks inclut désormais des LastOperations informations indiquant les opérations récentes IDs et leurs types. Cela vous permet d'identifier rapidement les opérations qui ont eu lieu et leur état actuel sans avoir à parcourir les journaux d'événements.

```
aws cloudformation describe-stacks --stack-name MyStack
```

Voici un exemple de réponse montrant que la dernière opération était une annulation suite à l'échec d'une opération de mise à jour.

```
{  
    "Stacks": [  
        {  
            "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/MyStack/07580010-bb79-11f0-8f6c-0289bb5c804f",  
            "StackName": "MyStack",  
            "Description": "A simple CloudFormation template to create an S3 bucket.",  
            "CreationTime": "2025-11-07T01:28:13.778000+00:00",  
            "LastUpdatedTime": "2025-11-07T01:43:39.838000+00:00",  
            "RollbackConfiguration": {},  
            "StackStatus": "UPDATE_ROLLBACK_COMPLETE",  
            "DisableRollback": false,  
            "NotificationARNs": [],  
            "Tags": [],  
            "EnableTerminationProtection": false,  
            "DriftInformation": {  
                "StackDriftStatus": "NOT_CHECKED"  
            },  
            "LastOperations": [  
                {  
                    "OperationType": "ROLLBACK",  
                    "OperationId": "d0f12313-7bdb-414d-a879-828a99b36f29"  
                },  
                {  
                    "OperationType": "UPDATE_STACK",  
                    "OperationId": "1c211b5a-4538-4dc9-bfed-e07734371e57"  
                }  
            ]  
        }  
    ]  
}
```

### Filtrer les événements par ID d'opération
<a name="filter-events-by-operation-id"></a>

La `describe-events` commande suivante décrit les événements relatifs à un ID d'opération spécifique :

```
aws cloudformation describe-events \
  --operation-id 1c211b5a-4538-4dc9-bfed-e07734371e57
```

Pour afficher uniquement les événements ayant échoué à des fins de dépannage, utilisez le `--filter FailedEvents=true` paramètre :

```
aws cloudformation describe-events \
  --operation-id 1c211b5a-4538-4dc9-bfed-e07734371e57 \
  --filter FailedEvents=true
```

La nouvelle fonctionnalité de filtrage des identifiants d'opération vous permet de vous concentrer sur des opérations spécifiques et les événements connexes. Cela est particulièrement utile pour :
+ **Résolution de défaillances spécifiques :** isolez les événements liés à un échec d'une opération pour comprendre ce qui s'est mal passé.
+ **Surveillance des opérations de longue durée :** suivez la progression des mises à jour complexes ou des déploiements à grande échelle.
+ **Audit des modifications :** passez en revue tous les événements associés à une opération de mise à jour particulière.
+ **Analyse des causes premières :** utilisez le filtre d'échec pour identifier rapidement la source des problèmes de déploiement.

## Codes d’état de la pile
<a name="stack-status-codes"></a>

Le tableau suivant décrit les champs renvoyés par la `describe-events` commande lors de l'utilisation du filtrage par ID d'opération :


| Champ | Description | 
| --- | --- | 
| EventId | Identifiant de l'événement. | 
| OperationId | Identifiant unique pour l'opération qui a généré cet événement. | 
| StackName | Nom de la pile à laquelle l’événement correspond. | 
| StackId | Identifiant de la pile à laquelle l’événement correspond. | 
| LogicalResourceId | Identifiant logique de la ressource. | 
| PhysicalResourceId | Identifiant physique de la ressource. | 
| ResourceProperties | Propriétés de la ressource. | 
| ResourceType | Type de ressource. | 
| Timestamp | Moment où l'événement est survenu. | 
| ResourceStatus | État de la ressource (CREATE\$1COMPLETE,UPDATE\$1FAILED, etc.). | 
| DetailedStatus | État détaillé de la pile. Si CONFIGURATION\$1COMPLETE est présent, la phase de configuration des ressources de la pile est terminée et la stabilisation des ressources est en cours. | 
| ResourceStatusReason | Plus d'informations sur cet état. | 

# Afficher la chronologie d'un déploiement de CloudFormation stack
<a name="stack-deployment-timeline-graph"></a>

Le graphique de la chronologie du déploiement de la pile fournit une représentation visuelle de la chronologie du déploiement de la pile. Cette vue affiche les statuts de déploiement de la pile et de chacune de ses ressources, ainsi que les heures auxquelles chaque statut a changé. Les statuts de déploiement de la pile sont représentés par une couleur correspondante.

**Topics**
+ [

## Comprendre le graphique de la chronologie du déploiement de la pile
](#understanding-stack-deployment-timeline-graph)
+ [

## Affichage du graphique chronologique du déploiement de la pile (console)
](#viewing-stack-deployment-timeline-graph)

## Comprendre le graphique de la chronologie du déploiement de la pile
<a name="understanding-stack-deployment-timeline-graph"></a>

L'image suivante montre le graphique chronologique d'un déploiement de stack qui a échoué en raison de l'échec du lancement d'une ressource d' EC2 instance Amazon.

![\[Graphique chronologique du déploiement d’une pile ayant échoué.\]](http://docs.aws.amazon.com/fr_fr/AWSCloudFormation/latest/UserGuide/images/deployment-timeline-graph.PNG)


Les noms des ressources de la pile se trouvent sur le côté gauche du graphique, et la date et l’heure relatives aux temps de déploiement se trouvent en haut du graphique.

Chaque ressource commence avec le statut **En cours**. La barre d’état passe à **Terminé** pour chaque déploiement réussi. La barre d’état passe à **Échec** lorsqu’une ressource ne parvient pas à se déployer. Lorsqu’une ressource ne parvient pas à se déployer et que le déploiement de la pile échoue également, la ressource responsable de l’échec du déploiement de la pile reçoit le statut **Échec racine probable**.

Après l’échec de l’opération de déploiement de la pile, la ressource déployée avec succès commence à être restaurée et passe au statut **Restauration en cours**. Les statuts passent à **Restauration terminée** une fois que la ressource a fini d’être restaurée.

En sélectionnant chaque ressource, vous obtenez des informations plus détaillées sur le calendrier de déploiement :

![\[Une fenêtre contextuelle avec un graphique du calendrier de déploiement de la pile affichant les détails du déploiement pour la ressource défaillante sélectionnée.\]](http://docs.aws.amazon.com/fr_fr/AWSCloudFormation/latest/UserGuide/images/deployment-timeline-graph-root-cause.PNG)


En sélectionnant une ressource, vous pouvez voir le **Type**, l’**Heure de début** du déploiement, l’**Heure de fin** du déploiement et la **Durée totale** du déploiement. Vous trouverez également l’**Heure de début**, l’**Heure de fin** et la **Durée** de chaque statut de déploiement dans les menus déroulants ci-dessous. Si la ressource n’a pas pu être déployée, une **Raison de l’échec** sera fournie.

Pour plus d’informations sur les statuts des piles, consultez [Codes d’état de la pile](view-stack-events.md#cfn-console-view-stack-data-resources-status-codes).

## Affichage du graphique chronologique du déploiement de la pile (console)
<a name="viewing-stack-deployment-timeline-graph"></a>

Pour afficher le graphique chronologique du déploiement de la pile :

1. Ouvrez la CloudFormation console à l'adresse [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

1. Dans la barre de navigation en haut de l'écran, choisissez le nom dans Région AWS lequel vous avez créé la pile.

1. Sur la page **Stacks** de la CloudFormation console, choisissez le nom de la pile. CloudFormation affiche les détails de la pile sélectionnée.

1. Choisissez l'onglet **Événements** pour afficher les événements CloudFormation de pile générés pour votre pile. 

1. Sélectionnez le bouton **Graphique chronologique** pour afficher le graphique chronologique de votre pile. 

# Comprendre les événements de création de CloudFormation piles
<a name="stack-resource-configuration-complete"></a>

Pendant le déploiement de la pile, plusieurs événements se produisent pour créer, configurer et valider les ressources définies dans le modèle de pile. La compréhension de ces événements peut vous aider à optimiser votre processus de création de pile et à rationaliser les déploiements.
+ **Événements de création de ressources** : lorsque chaque ressource démarre le processus de création, un événement **Statut** de type `CREATE_IN_PROGRESS` est défini. Cet événement indique que la ressource est en cours de provisionnement.
+ **Vérification de la cohérence finale** : une partie importante du temps de création de la pile est consacrée à la vérification de la cohérence finale des ressources créées par la pile. Au cours de cette phase, le service effectue des contrôles de cohérence internes, s'assurant que la ressource est pleinement opérationnelle et répond aux critères de stabilisation du service définis par chacun Service AWS.
+ **Événement de configuration terminée** : lorsque chaque ressource a terminé la phase de vérification de la cohérence finale du provisionnement, un **Statut détaillé** de l’événement `CONFIGURATION_COMPLETE` est défini.
+ **Événement de création de ressource terminée** : une fois que la ressource a été créée et configurée comme spécifié, et que la configuration correspond à celle spécifiée dans le modèle, l’événement **Statut** de `CREATE_COMPLETE` est défini.

Vous pouvez utiliser l’événement `CONFIGURATION_COMPLETE` pour rationaliser votre processus de création de pile dans les scénarios où la vérification de la cohérence finale des ressources n’est pas nécessaire, comme la validation d’une configuration de pile de préproduction ou le provisionnement inter-piles. Cet événement peut être utilisé de différentes manières. Par exemple, vous pouvez l’utiliser comme signal visuel pour éviter d’attendre la fin de la vérification de la cohérence des ressources ou de la pile. Vous pouvez également l’utiliser pour créer un mécanisme automatisé à l’aide de l’intégration continue et de la livraison continue (CI/CD) afin de déclencher des actions supplémentaires.

**Important**  
Bien que l’utilisation de l’événement `CONFIGURATION_COMPLETE` accélère la création des piles, il est important de connaître ses inconvénients. Tout d’abord, il n’est pris en charge que pour un sous-ensemble de types de ressources qui prennent en charge la détection des écarts. Pour obtenir la liste des types de ressources qui prennent en charge la détection des écarts, consultez [Prise en charge des types de ressources](resource-import-supported-resources.md). Cette approche peut ne pas convenir à tous les scénarios, en particulier lorsque les ressources nécessitent des vérifications approfondies de la cohérence finale afin de garantir une disponibilité opérationnelle totale dans l’environnement cloud (par exemple, dans les environnements de production). Nous vous recommandons d’évaluer soigneusement vos exigences de déploiement et l’importance des contrôles de cohérence pour chaque ressource. Utilisez l’événement `CONFIGURATION_COMPLETE` pour optimiser les vitesses de déploiement sans compromettre l’intégrité et la fiabilité de votre infrastructure.   
Étant donné que la définition de l’événement `CONFIGURATION_COMPLETE` n’est pas garantie, tous les scénarios qui l’utilisent doivent être prêts à gérer un événement `CREATE_COMPLETE` lorsqu’aucun événement `CONFIGURATION_COMPLETE` n’a été défini.

![\[Diagramme illustrant la séquence d’événements pour la création de ressources et le contrôle de cohérence éventuelle dans une pile.\]](http://docs.aws.amazon.com/fr_fr/AWSCloudFormation/latest/UserGuide/images/configuration-complete.png)


Lorsque le déploiement de la pile commence, les ressources `AWS::ECR::Repository` et `AWS::ECS::Cluster` lancent toutes deux le processus de création (`ResourceStatus` = `CREATE_IN_PROGRESS`. Lorsque le type de ressource `AWS::ECR::Repository` a lancé la vérification de cohérence finale (`DetailedStatus` = `CONFIGURATION_COMPLETE`), la ressource `AWS::ECS::TaskDefinition` peut alors lancer le processus de création. De même, une fois que la ressource `AWS::ECS::TaskDefinition` a lancé la vérification de cohérence finale, la ressource `AWS::ECS::Service` lance le processus de création.

**Événements `CREATE_IN_PROGRESS` et `CREATE_COMPLETE`**
+ **[Stack] :** `CREATE_IN_PROGRESS`
+ **[Resource] :** référentiel ECR `CREATE_IN_PROGRESS`
+ **[Resource] :** cluster ECS `CREATE_IN_PROGRESS`
+ **[Resource] :** référentiel ECR `CREATE_IN_PROGRESS`, `CONFIGURATION_COMPLETE`
+ **[Resource] :** définition de tâche ECS `CREATE_IN_PROGRESS`
+ **[Resource] :** cluster ECS `CREATE_IN_PROGRESS`, `CONFIGURATION_COMPLETE`
+ **[Resource] :** définition de tâche ECS `CREATE_IN_PROGRESS`, `CONFIGURATION_COMPLETE`
+ **[Resource] :** service ECS `CREATE_IN_PROGRESS`
+ **[Resource] :** référentiel ECR `CREATE_COMPLETE`
+ **[Resource] :** cluster ECS `CREATE_COMPLETE`
+ **[Resource] :** service ECS `CREATE_IN_PROGRESS`, `CONFIGURATION_COMPLETE`
+ **[Stack] :** `CREATE_IN_PROGRESS`, `CONFIGURATION_COMPLETE`
+ **[Resource] :** définition de tâche ECS `CREATE_COMPLETE`
+ **[Resource] :** service ECS `CREATE_COMPLETE`
+ **[Stack] :** `CREATE_COMPLETE`

# Surveiller la progression d’une mise à jour de pile
<a name="using-cfn-updating-stacks-monitor-stack"></a>

Pour suivre la progression d’une mise à jour de la pile, vous pouvez consulter ses événements. L’onglet **Événements** de la pile affiche chaque étape importante de la création et de la mise à jour de la pile, triées par heure de chaque événement, les événements les plus récents apparaissant en haut. Pour de plus amples informations, veuillez consulter [Surveiller la progression de la pile](monitor-stack-progress.md).

**Topics**
+ [

## Événements générés lors d’une mise à jour de pile réussie
](#using-cfn-updating-stacks-monitor-stack-update-events)
+ [

## Événements générés en cas d'échec d'une mise à jour de ressource
](#using-cfn-updating-stacks-monitor-stack-update-failure)

## Événements générés lors d’une mise à jour de pile réussie
<a name="using-cfn-updating-stacks-monitor-stack-update-events"></a>

Le début du processus de mise à jour de la pile est marqué d’un événement `UPDATE_IN_PROGRESS` pour la pile :

```
2011-09-30 09:35 PDT AWS::CloudFormation::Stack MyStack UPDATE_IN_PROGRESS 
```

Viennent ensuite les événements qui marquent le début et la fin de la mise à jour de chaque ressource qui a été modifiée dans le modèle de mise à jour. Par exemple, la mise à jour d’une ressource [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-rds-dbinstance.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-rds-dbinstance.html) nommée `MyDB` entraînerait les entrées suivantes :

```
2011-09-30 09:35 PDT AWS::RDS::DBInstance MyDB UPDATE_COMPLETE
2011-09-30 09:35 PDT AWS::RDS::DBInstance MyDB UPDATE_IN_PROGRESS
```

L'`UPDATE_IN_PROGRESS`événement est enregistré lorsqu'il est CloudFormation signalé que la ressource a commencé à être mise à jour. L'événement `UPDATE_COMPLETE` est enregistré lorsque la ressource a été créée avec succès.

Une CloudFormation fois la pile mise à jour réussie, vous verrez l'événement suivant :

```
2011-09-30 09:35 PDT AWS::CloudFormation::Stack MyStack UPDATE_COMPLETE 
```

**Important**  
Lors des opérations de mise à jour de la pile, s'il est CloudFormation nécessaire de remplacer une ressource existante, il crée d'abord une nouvelle ressource, puis supprime l'ancienne ressource. Cependant, dans certains cas, il CloudFormation peut être impossible de supprimer l'ancienne ressource (par exemple, si l'utilisateur n'est pas autorisé à supprimer une ressource d'un type donné).  
CloudFormation fait trois tentatives pour supprimer l'ancienne ressource. S'il n'est pas CloudFormation possible de supprimer l'ancienne ressource, elle est supprimée de la pile et continue de mettre à jour la pile. Lorsque la mise à jour de la pile est terminée, CloudFormation un événement de `UPDATE_COMPLETE` pile est émis, mais inclut un événement indiquant `StatusReason` qu'une ou plusieurs ressources n'ont pas pu être supprimées. CloudFormation émet également un `DELETE_FAILED` événement pour la ressource spécifique, avec un correspondant `StatusReason` fournissant plus de détails sur les raisons de l' CloudFormation échec de la suppression de la ressource.  
L'ancienne ressource existe toujours et continuera d'être facturée, mais elle n'est plus accessible via CloudFormation. Pour supprimer l'ancienne ressource, accédez à l'ancienne ressource directement à l'aide de la console ou de l'API du service sous-jacent.  
Ceci est également vrai pour les ressources que vous avez retirées du modèle de pile et qui seront donc supprimées de la pile lors de la mise à jour de la pile.

## Événements générés en cas d'échec d'une mise à jour de ressource
<a name="using-cfn-updating-stacks-monitor-stack-update-failure"></a>

Si la mise à jour d'une ressource échoue, CloudFormation signale un `UPDATE_FAILED` événement indiquant la raison de l'échec. Par exemple, si votre modèle de mise à jour spécifie une modification de propriété qui n’est pas prise en charge par la ressource, telle que la réduction de la taille de `AllocatedStorage` pour une ressource [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-rds-dbinstance.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-rds-dbinstance.html), vous verrez des événements tels que ceux-ci :

```
2011-09-30 09:36 PDT AWS::RDS::DBInstance MyDB UPDATE_FAILED Size cannot be less than current size; requested: 5; current: 10
2011-09-30 09:35 PDT AWS::RDS::DBInstance MyDB UPDATE_IN_PROGRESS
```

En cas d'échec d'une mise à jour CloudFormation des ressources, restaure toutes les ressources mises à jour lors de la mise à niveau vers leurs configurations antérieures à la mise à jour. Voici un exemple d'événements que vous pouvez voir en cas d'annulation d'une mise à jour :

```
2011-09-30 09:38 PDT AWS::CloudFormation::Stack MyStack UPDATE_ROLLBACK_COMPLETE
2011-09-30 09:38 PDT AWS::RDS::DBInstance MyDB UPDATE_COMPLETE
2011-09-30 09:37 PDT AWS::RDS::DBInstance MyDB UPDATE_IN_PROGRESS
2011-09-30 09:37 PDT AWS::CloudFormation::Stack MyStack UPDATE_ROLLBACK_IN_PROGRESS The following resource(s) failed to update: [MyDB]
```

# Poursuite de la restauration d'une mise à jour
<a name="using-cfn-updating-stacks-continueupdaterollback"></a>

Parfois, lorsque vous CloudFormation essayez d'annuler une mise à jour de la pile, il ne peut pas annuler toutes les modifications apportées au cours du processus de mise à jour. C’est ce qu’on appelle l’état `UPDATE_ROLLBACK_FAILED`. Par exemple, vous pouvez avoir une pile qui commence à revenir à une ancienne instance de base de données supprimée en dehors de CloudFormation. Comme CloudFormation ne sait pas que la base de données a été supprimée, il suppose qu'elle existe toujours et tente de l'utiliser pour effectuer la restauration, ce qui entraîne l'échec de l'opération.

Une pile dans l’état `UPDATE_ROLLBACK_FAILED` ne peut pas être mise à jour, mais elle peut être restaurée à un état fonctionnel (`UPDATE_ROLLBACK_COMPLETE`). Après avoir rétabli les paramètres d’origine de la pile, vous pouvez essayer de la mettre à jour à nouveau.

Dans la plupart des cas, vous devez corriger l’erreur qui entraîne l’échec de la restauration de la mise à jour avant de pouvoir continuer à restaurer la pile. Dans d’autres cas, vous pouvez poursuivre la restauration de la mise à jour sans aucune modification (par exemple, lorsqu’une opération de la pile arrive à expiration).

**Note**  
Si vous utilisez des piles imbriquées, la restauration de la pile parent tente de restaurer également toutes les piles enfants.

**Pour poursuivre la restauration d'une mise à jour (console)**

1. Connectez-vous à la CloudFormation console AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

1. Dans la barre de navigation en haut de l'écran, choisissez l' Région AWS emplacement de la pile.

1. Sur la page **Piles**, sélectionnez la pile que vous voulez mettre à jour, sélectionnez **Actions de pile**, puis sélectionnez **Continuer la restauration de la mise à jour**.

   Si aucune des solutions ne [Résolution des erreurs](troubleshooting.md#troubleshooting-errors) fonctionne, vous pouvez utiliser l'option avancée pour ignorer les ressources qui ne CloudFormation peuvent pas être restaurées avec succès. Vous devez [rechercher](cfn-console-view-stack-data-resources.md) et saisir la logique IDs des ressources que vous souhaitez ignorer. Spécifiez uniquement les ressources qui sont passées à l’état `UPDATE_FAILED` pendant l’état `UpdateRollback` et non pendant la mise à jour directe.
**Avertissement**  
CloudFormation définit le statut des ressources spécifiées sur `UPDATE_COMPLETE` et continue de faire reculer la pile. Une fois la restauration terminée, l’état des ressources ignorées ne correspond pas à celui des ressources contenues dans le modèle de pile. Avant de procéder à une autre mise à jour de pile, vous devez mettre à jour la pile ou les ressources de façon à les rendre cohérentes les unes par rapport aux autres. A défaut, les futures mises à jour de la pile risquent d’échouer et la pile deviendra irrécupérable.

   Spécifiez le nombre minimum de ressources requises pour restaurer votre pile avec succès. Par exemple, une mise à jour de ressource ayant échoué peut entraîner l'échec de ressources dépendantes. Dans ce cas, il n'est peut-être pas nécessaire d'ignorer les ressources dépendantes.

   Pour ignorer des ressources faisant partie de piles imbriquées, utilisez le format suivant : `NestedStackName.ResourceLogicalID`. Si vous souhaitez spécifier l’ID logique d’une ressource de pile (`Type: AWS::CloudFormation::Stack`) dans la liste `ResourcesToSkip`, sa ressource de pile imbriquée correspondante doit être à l’un des états suivants : `DELETE_IN_PROGRESS`, `DELETE_COMPLETE` ou `DELETE_FAILED`.

**Pour poursuivre la restauration d'une mise à jour (AWS CLI)**
+ Utilisez la commande [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/continue-update-rollback.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/continue-update-rollback.html) avec l’option `--stack-name` pour spécifier l’ID de la pile que vous voulez continuer à restaurer.

## Continuer la restauration à partir des mises à jour de piles imbriquées ayant échoué
<a name="nested-stacks"></a>

Lorsque vous avez plusieurs piles imbriquées les unes dans les autres, vous devrez peut-être ignorer les ressources sur plusieurs niveaux imbriqués pour que la pile complète revienne à un état fonctionnel. 

Par exemple, vous avez une pile racine appelée `WebInfra` qui contient deux piles plus petites à l’intérieur : `WebInfra-Compute` et `WebInfra-Storage`. Ces deux piles ont également leurs propres piles imbriquées à l’intérieur.

Si un problème survient pendant une mise à jour et que le processus de mise à jour échoue, toute la hiérarchie de la pile peut se retrouver dans l’état `UPDATE_ROLLBACK_FAILED`, comme illustré dans le diagramme suivant. 

![\[Schéma illustrant une hiérarchie de piles imbriquées à trois niveaux.\]](http://docs.aws.amazon.com/fr_fr/AWSCloudFormation/latest/UserGuide/images/cfn-update-stack-continue-update-rollback_nested-stacks.png)


**Note**  
Les noms de pile de cet exemple sont tronqués par souci de simplification. Les noms des piles d'enfants sont généralement générés par CloudFormation et contiennent des chaînes aléatoires uniques, de sorte que les noms réels peuvent ne pas être faciles à utiliser.

Pour que la pile racine redevienne opérationnelle à l’aide de la commande `continue-update-rollback`, vous devez utiliser l’option `--resources-to-skip` pour ignorer les ressources dont la restauration a échoué.

L’exemple **continue-update-rollback** suivant reprend une opération de restauration suite à un échec antérieur de la mise à jour de la pile. Dans cet exemple, l’option `--resources-to-skip` inclut les éléments suivants :
+ `myCustom`
+ `WebInfra-Compute-Asg.myAsg`
+ `WebInfra-Compute-LB.myLoadBalancer`
+ `WebInfra-Storage.DB`

Pour les ressources de la pile racine, il suffit de fournir l’ID logique, par exemple `myCustom`. Cependant, pour les ressources contenues dans des piles imbriquées, vous devez fournir à la fois le nom de la pile imbriquée et son ID logique, séparés par un point. Par exemple, `WebInfra-Compute-Asg.myAsg`.

```
aws cloudformation continue-update-rollback --stack-name WebInfra \
    --resources-to-skip myCustom WebInfra-Compute-Asg.myAsg WebInfra-Compute-LB.myLoadBalancer WebInfra-Storage.DB
```

**Pour trouver le nom d’une pile imbriquée**  
Vous pouvez le localiser dans l’ID de pile ou le nom de ressource Amazon Resource Name (ARN) de la pile enfant.

L’exemple d’ARN suivant fait référence à une pile nommée `WebInfra-Storage-Z2VKC706XKXT`.

```
arn:aws:cloudformation:us-east-1:123456789012:stack/WebInfra-Storage-Z2VKC706XKXT/ea9e7f90-54f7-11e6-a032-028f3d2330bd
```

**Pour trouver l’ID logique d’une pile imbriquée**  
Vous pouvez trouver l’ID logique d’une pile enfant dans le définition de modèle de son parent. Dans le diagramme, le `LogicalId` de la pile enfant `WebInfra-Storage-DB` est `DB` dans sa pile parent `WebInfra-Storage`.

Dans la CloudFormation console, vous pouvez également trouver l'identifiant logique dans la colonne **ID logique** de la ressource de pile sous l'onglet **Ressources** ou dans l'onglet **Événements**. Pour de plus amples informations, veuillez consulter [Afficher les informations relatives à la pile depuis la CloudFormation console](cfn-console-view-stack-data-resources.md).

# Détermination de la cause d’un échec de pile
<a name="determine-root-cause-for-stack-failures"></a>

Si la création de votre pile échoue, cela CloudFormation peut vous aider à déterminer l'événement susceptible d'être à l'origine de la défaillance de la pile. Selon le scénario et vos autorisations, les événements  AWS CloudTrail peuvent fournir des détails supplémentaires sur la cause profonde si la **Raison de l’état** indiquée dans **Événements** n’est pas claire.

**Détermination de la cause profonde d’un échec de pile**

1. Ouvrez la CloudFormation console à l'adresse [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

1. Sur la page **Piles**, sélectionnez la pile échouée.

1. Sélectionnez l’onglet **Événements**.

1. Choisissez **Détecter la cause première**. CloudFormation analysera la panne et indiquera l'événement qui en est probablement la cause en ajoutant une étiquette « **cause première probable** » à l'**état** de l'événement spécifique. **Reportez-vous à la section Motif** du statut pour plus d'explications sur l'état de la CloudFormation console.

1. Sélectionner l’**État** d’échec portant l’étiquette **Cause profonde probable** afin d’obtenir plus d’informations sur la cause de l’échec. En fonction du scénario et de vos autorisations, vous pourrez peut-être consulter un CloudTrail événement détaillé. Résultats possibles après sélection de l’**État**
   + CloudTrail des événements liés à ce problème sont disponibles et peuvent aider à le résoudre. Afficher CloudTrail les événements.
   + Nous n'avons trouvé aucun CloudTrail événement lié à ce problème susceptible d'aider à le résoudre.
   + Vos autorisations actuelles ne vous permettent pas d'accéder à l'affichage CloudTrail des événements. .
   + Au cours du processus de vérification des CloudTrail événements disponibles, revenez dans quelques minutes.
   + Une erreur s'est produite lors de la récupération des CloudTrail événements. Pour une inspection manuelle, rendez-vous sur la CloudTrail console.

1. Si le motif indiqué dans le champ **Motif du statut** n'est pas clair et que la cause première affiche un lien vers la CloudTrail console, ouvrez le lien pour afficher l'événement afin de trouver une cause première détaillée.

Pour plus d'informations sur les CloudTrail événements, voir [Comprendre les CloudTrail événements](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-events.html) et [le contenu des CloudTrail enregistrements](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-record-contents.html).

Pour plus d'informations sur l'historique des CloudTrail événements, voir [Utilisation de l'historique des CloudTrail événements](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html).

**Note**  
Les piles imbriquées ne prennent pas en charge la fonction **Détecter la cause profonde**.

# Choisissez comment gérer les défaillances lors de l’approvisionnement des ressources
<a name="stack-failure-options"></a>

Si votre opération de stack échoue, vous n’avez pas à annuler les ressources déjà correctement provisionnées et à recommencer depuis le début à chaque fois. Au lieu de cela, vous pouvez dépanner les ressources dans un état `CREATE_FAILED` ou `UPDATE_FAILED`, puis reprendre le provisionnement à partir du point où le problème s’est produit. 

Pour ce faire, vous devez activer l’option Conserver les ressources correctement provisionnées. Cette option est disponible pour tous les déploiements de pile et les opérations d’ensembles de modifications.
+ Pour la création de piles, si vous choisissez l'option **Conserver les ressources correctement provisionnées**, CloudFormation préserve l'état des ressources créées avec succès et laisse les ressources défaillantes dans un état d'échec jusqu'à ce que la prochaine opération de mise à jour soit effectuée.
+ Lors des opérations de mise à jour et de modification, choisir **Préserver les ressources provisionnées** avec succès permet de conserver l’état des ressources qui ont été provisionnées avec succès tout en rétablissant les ressources qui ont échoué à leur dernier état stable connu. Les ressources en échec se trouveront à l'état `UPDATE_FAILED`. Les ressources sans dernier état stable connu seront supprimées lors de la prochaine opération de pile.

**Topics**
+ [

## Présentation des options d’échec de pile
](#stack-failure-options-overview)
+ [

## Conditions requises pour suspendre la restauration de la pile
](#stack-failure-options-conditions)
+ [

## Préserver les ressources correctement allouées (console)
](#stack-failure-options-console)
+ [

## Préserver les ressources correctement allouées (AWS CLI)
](#stack-failure-options-cli)

## Présentation des options d’échec de pile
<a name="stack-failure-options-overview"></a>

Avant d'exécuter une opération depuis la CloudFormation console, l'API ou AWS CLI, spécifiez le comportement en cas de défaillance des ressources provisionnées. Passez ensuite au processus de déploiement de vos ressources sans aucune autre modification. En cas de défaillance opérationnelle, CloudFormation s'arrête à la première défaillance de chaque chemin de provisionnement indépendant. CloudFormation identifie les dépendances entre les ressources afin de paralléliser les actions de provisionnement indépendantes. Il procède ensuite à l'allocation des ressources sur chaque chemin d'allocation indépendant jusqu'à ce qu'il rencontre un échec. La défaillance d'un chemin n'affecte pas les autres chemins de provisionnement. CloudFormation continuera à fournir les ressources jusqu'à leur achèvement ou s'arrêtera en cas de panne différente.

Corrigez les éventuels problèmes pour poursuivre le processus de déploiement. CloudFormation effectue les mises à jour nécessaires avant de réessayer des actions de provisionnement sur des ressources qui n'ont pas pu être correctement provisionnées plus tôt. Vous résolvez les problèmes en soumettant les opérations **Retry** (Réessayer), **Update** (Mettre à jour) ou **Roll back** (Restaurer). Par exemple, si vous allouez une instance Amazon EC2 et que l'instance EC2 échoue lors d'une opération de création, vous pouvez rechercher l'erreur, plutôt que de restaurer immédiatement la ressource ayant échoué. Vous pouvez passer en revue les contrôles d'état du système et les contrôles d'état des instances, puis sélectionner l'opération **Retry** (Réessayer) une fois que les problèmes sont résolus.

Lorsqu’une opération de pile échoue et que vous avez spécifié **Preserve successfully provisioned resources** (Préserver les ressources correctement allouées) à partir du menu **Stack failure options** (Options d’échec de pile), vous pouvez sélectionner les options suivantes.
+ **Retry** (Réessayer) : relance l’opération d’allocation sur les ressources en échec et continue d’allouer le modèle jusqu’à la fin de l’opération de pile ou jusqu’à l’échec suivant. Sélectionnez cette option si la ressource n'a pas pu être provisionnée en raison d'un problème ne nécessitant pas de modification du modèle, tel qu'une autorisation Gestion des identités et des accès AWS (IAM).
+ **Update** (Mettre à jour) : les ressources qui ont été allouées sont mises à jour lors des mises à jour des modèles. Les ressources qui n'ont pas pu être créées ou mises à jour seront relancées. Sélectionnez cette option si la ressource n'a pas pu être allouée en raison d'erreurs de modèle et si vous avez modifié le modèle. Lorsque vous mettez à jour une pile qui se trouve à l’état `FAILED`, vous devez sélectionner **Preserve successfully provisioned resources** (Préserver les ressources correctement allouées) pour **Stack failure options** (Options d’échec de pile) afin de poursuivre la mise à jour de votre pile.
+ **Annulation** : CloudFormation ramène la pile au dernier état stable connu.

## Conditions requises pour suspendre la restauration de la pile
<a name="stack-failure-options-conditions"></a>

Pour éviter CloudFormation de revenir en arrière et de supprimer automatiquement les ressources créées avec succès, les conditions suivantes doivent être remplies.

1. Lorsque vous créez ou mettez à jour la pile, vous devez choisir l’option **Préserver les ressources correctement provisionnées**. Cela indique de CloudFormation ne pas supprimer les ressources créées avec succès, même si l'opération globale de pile échoue.

1. L’opération de pile doit avoir échoué, ce qui signifie que l’état de la pile est soit `CREATE_FAILED` soit `UPDATE_FAILED`.

**Note**  
Les types de mise à jour immuables ne sont pas pris en charge.

## Préserver les ressources correctement allouées (console)
<a name="stack-failure-options-console"></a>

------
#### [ Create stack ]

**Pour préserver les ressources correctement allouées lors d’une opération de création de pile**

1. Connectez-vous à la CloudFormation console AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

1. Depuis la page **CloudFormation**, choisissez **Piles**, puis **Créer une pile avec de nouvelles ressources (standard)**.

1. Pour la **Condition préalable – Préparer le modèle**, sélectionnez **Choisir un modèle existant**.

1. Sous **Spécifier le modèle**, choisissez soit de spécifier l’URL du compartiment S3 qui contient votre modèle de pile, soit de charger un fichier de modèle de pile. Ensuite, choisissez **Suivant**.

1. Sur la page **Spécifier les détails de la pile**, saisissez un nom pour la pile dans la zone **Stack name** (Nom de la pile).

1. Dans la section **Paramètres**, spécifiez les paramètres définis dans votre modèle de pile.

   Vous pouvez utiliser ou modifier n'importe quel paramètre contenant des valeurs par défaut.

1. Lorsque vous êtes satisfait de vos paramètres, choisissez **Next** (Suivant).

1. Sur la page **Configurer les options de la pile**, vous pouvez définir des options supplémentaires pour votre pile.

1. Pour **Stack failure options** (Options d’échec de pile), sélectionnez **Preserve successfully provisioned resources** (Préserver les ressources correctement allouées).

1. Lorsque vous êtes satisfait de vos options de pile, choisissez **Next** (Suivant).

1. Passez en revue votre pile sur la page **Révision** et sélectionnez **Create stack** (Créer une pile).

*Résultats* : les ressources qui n’ont pas pu être créées font passer l’état de la pile à `CREATE_FAILED` pour empêcher la restauration de la pile lorsque l’opération de pile échoue. Les ressources qui sont correctement allouées se trouvent à l'état `CREATE_COMPLETE`. Vous pouvez surveiller la pile dans l’onglet **Stack events** (Événements de la pile).

------
#### [ Update stack ]

**Pour préserver les ressources correctement allouées lors d’une opération de mise à jour de pile**

1. Connectez-vous à la CloudFormation console AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

1. Sélectionnez la pile que vous souhaitez mettre à jour, puis cliquez sur **Update** (Mettre à jour).

1. Sur la page **Mettre à jour une pile**, choisissez un modèle de pile en utilisant l’une des options suivantes :
   + **Utiliser le modèle existant**
   + **Replace current template** (Remplacer le modèle actuel)
   + **Modifier le modèle dans Infrastructure Composer**

   Acceptez vos paramètres et sélectionnez **Next** (Suivant).

1. Sur la page **Définir les détails de la pile**, spécifiez les paramètres définis dans votre modèle de pile.

   Vous pouvez utiliser ou modifier n'importe quel paramètre contenant des valeurs par défaut.

1. Lorsque vous êtes satisfait de vos paramètres, choisissez **Next** (Suivant).

1. Sur la page **Configurer les options de la pile**, vous pouvez définir des options supplémentaires pour votre pile.

1. Pour **Comportement en cas d'échec de l'allocation**, sélectionnez **Preserve successfully provisioned resources** (Préserver les ressources correctement allouées).

1. Lorsque vous êtes satisfait de vos options de pile, choisissez **Next** (Suivant).

1. Passez en revue votre pile sur la page **Révision** et sélectionnez **Update stack** (Mettre à jour une pile).

*Résultats* : les ressources qui n’ont pas pu être mises à jour passent l’état de la pile à `UPDATE_FAILED` et reviennent au dernier état stable connu. Les ressources dont le dernier état stable est connu seront supprimées CloudFormation lors de la prochaine opération de pile. Les ressources qui sont correctement allouées se trouvent à l'état `CREATE_COMPLETE` ou `UPDATE_COMPLETE`. Vous pouvez surveiller la pile dans l’onglet **Stack events** (Événements de la pile).

------
#### [ Change set ]

**Note**  
Vous pouvez initier un jeu de modifications pour une pile dont l’état est `CREATE_FAILED` ou `UPDATE_FAILED`, mais pas pour un état `UPDATE_ROLLBACK_FAILED`.

**Pour préserver les ressources correctement allouées lors d'une opération de modification de pile**

1. Connectez-vous à la CloudFormation console AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

1. Sélectionnez la pile qui contient le jeu de modifications que vous souhaitez initier, puis choisissez l’onglet **Change sets** (Jeux de modifications).

1. Sélectionnez le jeu de modifications, puis cliquez sur **Execute** (Exécuter).

1. Pour **Execute change set** (Exécuter le jeu de modifications), sélectionnez l'option **Preserve successfully provisioned resources** (Préserver les ressources correctement allouées).

1. Sélectionnez **Execute change set** (Exécuter le jeu de modifications).

*Résultats* : les ressources qui n’ont pas pu être mises à jour passent l’état de la pile à `UPDATE_FAILED` et reviennent au dernier état stable connu. Les ressources dont le dernier état stable est connu seront supprimées CloudFormation lors de la prochaine opération de pile. Les ressources qui sont correctement allouées se trouvent à l'état `CREATE_COMPLETE` ou `UPDATE_COMPLETE`. Vous pouvez surveiller la pile dans l’onglet **Stack events** (Événements de la pile).

------

## Préserver les ressources correctement allouées (AWS CLI)
<a name="stack-failure-options-cli"></a>

------
#### [ Create stack ]

**Pour préserver les ressources correctement allouées lors d’une opération de création de pile**

Spécifiez l’option `--disable-rollback` ou l’énumération `on-failure DO_NOTHING` au cours d’une opération [create-stack](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/create-stack.html).

1. Fournissez un nom de pile et un modèle à la commande **create-stack** avec l’option `--disable-rollback`.

   ```
   aws cloudformation create-stack --stack-name myteststack \
       --template-body file://template.yaml \
       --disable-rollback
   ```

   La commande renvoie le résultat suivant.

   ```
   {
       "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/myteststack/466df9e0-0dff-08e3-8e2f-5088487c4896"
   }
   ```

1. Décrivez l’état de la pile à l’aide de la commande **describe-stacks**.

   ```
   aws cloudformation describe-stacks --stack-name myteststack
   ```

   La commande renvoie le résultat suivant.

   ```
   {
       "Stacks":  [
           {
               "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/myteststack/466df9e0-0dff-08e3-8e2f-5088487c4896",
               "Description": "AWS CloudFormation Sample Template",
               "Tags": [],
               "Outputs": [],
               "StackStatusReason": “The following resource(s) failed to create: [MyBucket]”,
               "CreationTime": "2013-08-23T01:02:15.422Z",
               "Capabilities": [],
               "StackName": "myteststack",
               "StackStatus": "CREATE_FAILED",
               "DisableRollback": true
           }
       ]
   }
   ```

------
#### [ Update stack ]

**Pour préserver les ressources provisionnées avec succès pendant une opération de mise à jour de la pile**

1. Fournissez un nom de pile et un modèle existants à la commande **update-stack** avec l’option `--disable-rollback`.

   ```
   aws cloudformation update-stack --stack-name myteststack \
       --template-url https://s3.amazonaws.com/amzn-s3-demo-bucket/updated.template --disable-rollback
   ```

   La commande renvoie le résultat suivant.

   ```
   {
       "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/myteststack/466df9e0-0dff-08e3-8e2f-5088487c4896"
   }
   ```

1. Décrivez l’état de la pile à l’aide de la commande **describe-stacks** ou **describe-stack-events**.

   ```
   aws cloudformation describe-stacks --stack-name myteststack
   ```

   La commande renvoie le résultat suivant.

   ```
   {
       "Stacks":  [
           {
               "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/myteststack/466df9e0-0dff-08e3-8e2f-5088487c4896",
               "Description": "AWS CloudFormation Sample Template",
               "Tags": [],
               "Outputs": [],
               "CreationTime": "2013-08-23T01:02:15.422Z",
               "Capabilities": [],
               "StackName": "myteststack",
               "StackStatus": "UPDATE_COMPLETE",
               "DisableRollback": true
           }
       ]
   }
   ```

------
#### [ Change set ]

**Note**  
Vous pouvez initier un jeu de modifications pour une pile dont l’état est `CREATE_FAILED` ou `UPDATE_FAILED`, mais pas pour un état `UPDATE_ROLLBACK_FAILED`.

**Pour préserver les ressources correctement allouées lors d'une opération de modification de pile**

Spécifiez l'`--disable-rollback`option lors d'une [execute-change-set](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/execute-change-set.html)opération.

1. Fournissez un nom de pile et un modèle à la commande **execute-change-set** avec l’option `--disable-rollback`.

   ```
   aws cloudformation execute-change-set --stack-name myteststack \
       --change-set-name my-change-set --template-body file://template.yaml
   ```

   La commande renvoie le résultat suivant.

   ```
   {
    "Id": "arn:aws:cloudformation:us-east-1:123456789012:changeSet/my-change-set/bc9555ba-a949-xmpl-bfb8-f41d04ec5784",
    "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/myteststack/466df9e0-0dff-08e3-8e2f-5088487c4896"
   }
   ```

1. Lancez le jeu de modifications à l'aide de l'option `--disable-rollback`.

   ```
   aws cloudformation execute-change-set --stack-name myteststack \
       --change-set-name my-change-set -–disable-rollback
   ```

1. Déterminez l’état de la pile à l’aide de la commande **describe-stacks** ou **describe-stack-events**.

   ```
   aws cloudformation describe-stack-events --stack-name myteststack
   ```

   La commande renvoie le résultat suivant.

   ```
   {
      "StackEvents": [
        {
           "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/myteststack/466df9e0-0dff-08e3-8e2f-5088487c4896",
           "EventId": "49c966a0-7b74-11ea-8071-024244bb0672",
           "StackName": "myteststack",
           "LogicalResourceId": " MyBucket",
           "PhysicalResourceId": "myteststack-MyBucket-abcdefghijk1",
           "ResourceType": "AWS::S3::Bucket",
           "Timestamp": "2020-04-10T21:43:17.015Z",
           "ResourceStatus": "UPDATE_FAILED"
           "ResourceStatusReason": "User XYZ is not allowed to perform S3::UpdateBucket on MyBucket"
        }
   }
   ```

1. Corrigez les erreurs d'autorisation et réessayez l'opération.

   ```
   aws cloudformation update-stack --stack-name myteststack \
       --use-previous-template --disable-rollback
   ```

   La commande renvoie le résultat suivant.

   ```
   {
       "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/myteststack/466df9e0-0dff-08e3-8e2f-5088487c4896"
   }
   ```

1. Décrivez l’état de la pile à l’aide de la commande **describe-stacks** ou **describe-stack-events**.

   ```
   aws cloudformation describe-stacks --stack-name myteststack
   ```

   La commande renvoie le résultat suivant.

   ```
   {
       "Stacks":  [
           {
               "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/myteststack/466df9e0-0dff-08e3-8e2f-5088487c4896",
               "Description": "AWS CloudFormation Sample Template",
               "Tags": [],
               "Outputs": [],
               "CreationTime": "2013-08-23T01:02:15.422Z",
               "Capabilities": [],
               "StackName": "myteststack",
               "StackStatus": "UPDATE_COMPLETE",
               "DisableRollback": true
           }
       ]
   }
   ```

------

### Rétablissement d’une pile
<a name="roll-back-stack-cli"></a>

Vous pouvez utiliser la commande [rollback-stack](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/rollback-stack.html) pour restaurer une pile avec un état `CREATE_FAILED` ou `UPDATE_FAILED` pile à son dernier état stable.

La commande **rollback-stack** suivante annule la pile spécifiée.

```
aws cloudformation rollback-stack --stack-name myteststack
```

La commande renvoie le résultat suivant.

```
{
    "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/myteststack/466df9e0-0dff-08e3-8e2f-5088487c4896"
}
```

**Note**  
L’opération **rollback-stack** supprimera une pile si elle ne contient pas un dernier état stable connu.