View a markdown version of this page

Démarrez avec l'exemple d'application Scorekeep - AWS X-Ray

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.

Démarrez avec l'exemple d'application Scorekeep

Note

X-Ray SDK/Daemon Avis de maintenance — Le 25 février 2026, il passera en mode maintenance, où les versions du X-Ray SDK et du démon AWS seront limitées pour résoudre uniquement les problèmes de sécurité. AWS X-Ray SDKs/Daemon Pour plus d'informations sur la chronologie du support, consultezChronologie du support pour le SDK et Daemon X-Ray. Nous vous recommandons de migrer vers OpenTelemetry. Pour plus d'informations sur la migration vers OpenTelemetry, consultez la section Migration d'une X-Ray instrumentation à OpenTelemetry une autre.

Ce didacticiel utilise la xray-gettingstarted branche de l'exemple d'application Scorekeep, qui permet de CloudFormation créer et de configurer les ressources qui exécutent l'exemple d'application et le X-Ray démon sur Amazon ECS. L'application utilise le framework Spring pour implémenter une API Web JSON et AWS SDK pour Java pour conserver les données dans Amazon DynamoDB. Un filtre de servlet intégré à l'application contrôle toutes les demandes entrantes traitées par l'application, et un gestionnaire de requêtes intégré au AWS SDK client gère les appels en aval à DynamoDB.

Vous pouvez suivre ce didacticiel à l'aide du Console de gestion AWS ou du AWS CLI.

Conditions préalables

Ce didacticiel permet CloudFormation de créer et de configurer les ressources qui exécutent l'exemple d'application et le X-Ray démon. Les prérequis suivants sont requis pour installer et exécuter le didacticiel :

  1. Si vous utilisez un utilisateur IAM avec des autorisations limitées, ajoutez les politiques utilisateur suivantes dans la console IAM :

    • AWSCloudFormationFullAccess— pour accéder et utiliser CloudFormation

    • AmazonS3FullAccess— pour télécharger un fichier modèle à CloudFormation l'aide du Console de gestion AWS

    • IAMFullAccess— pour créer les rôles d'instance Amazon ECS et Amazon EC2

    • AmazonEC2FullAccess— pour créer les ressources Amazon EC2

    • AmazonDynamoDBFullAccess— pour créer les tables DynamoDB

    • AmazonECS_FullAccess— pour créer des ressources Amazon ECS

    • AmazonSNSFullAccess— pour créer la rubrique Amazon SNS

    • AWSXrayReadOnlyAccess— pour obtenir l'autorisation d'afficher la carte des traces et les traces dans la X-Ray console

  2. Pour exécuter le didacticiel à l'aide de AWS CLI, installez la CLI version 2.7.9 ou ultérieure et configurez la CLI avec l'utilisateur à l'étape précédente. Assurez-vous que la région est configurée lors de la configuration AWS CLI avec l'utilisateur. Si aucune région n'est configurée, vous devrez l'ajouter --region AWS-REGION à chaque commande CLI.

  3. Assurez-vous que Git est installé afin de cloner l'exemple de dépôt d'applications.

  4. Utilisez l'exemple de code suivant pour cloner la xray-gettingstarted branche du référentiel Scorekeep :

    git clone https://github.com/aws-samples/eb-java-scorekeep.git xray-scorekeep -b xray-gettingstarted

Installez l'application Scorekeep à l'aide de CloudFormation

Console de gestion AWS
Installez l'exemple d'application à l'aide du Console de gestion AWS
  1. Ouvrez la console CloudFormation.

  2. Choisissez Créer une pile, puis choisissez Avec de nouvelles ressources dans le menu déroulant.

  3. Dans la section Spécifier un modèle, sélectionnez Charger un modèle de fichier.

  4. Sélectionnez Choisir un fichier, accédez au xray-scorekeep/cloudformation dossier qui a été créé lorsque vous avez cloné le dépôt git et choisissez le cf-resources.yaml fichier.

  5. Choisissez Next (Suivant) pour continuer.

  6. Entrez scorekeep dans la zone de texte Nom de la pile, puis choisissez Suivant en bas de la page pour continuer. Notez que la suite de ce didacticiel part du principe que la pile est nomméescorekeep.

  7. Faites défiler la page vers le bas de la page Configurer les options de pile et choisissez Suivant pour continuer.

  8. Accédez au bas de la page Révision, cochez la case indiquant qu'il est CloudFormation possible de créer des ressources IAM avec des noms personnalisés, puis choisissez Créer une pile.

  9. La CloudFormation pile est en cours de création. L'état de la pile CREATE_IN_PROGRESS durera environ cinq minutes avant de passer àCREATE_COMPLETE. Le statut sera actualisé périodiquement, ou vous pouvez actualiser la page.

AWS CLI
Installez l'exemple d'application à l'aide du AWS CLI
  1. Accédez au cloudformation dossier du xray-scorekeep référentiel que vous avez cloné plus tôt dans le didacticiel :

    cd xray-scorekeep/cloudformation/
  2. Entrez la AWS CLI commande suivante pour créer la CloudFormation pile :

    aws cloudformation create-stack --stack-name scorekeep --capabilities "CAPABILITY_NAMED_IAM" --template-body file://cf-resources.yaml
  3. Attendez que l'état de la CloudFormation pile soit CREATE_COMPLETE réglé, ce qui prendra environ cinq minutes. Utilisez la AWS CLI commande suivante pour vérifier l'état :

    aws cloudformation describe-stacks --stack-name scorekeep --query "Stacks[0].StackStatus"

Génération de données de suivi

L'exemple d'application inclut une application web frontale. Utilisez l'application web pour générer du trafic vers l'API et envoyer des données de suivi à X-Ray. Tout d'abord, récupérez l'URL de l'application Web à l'aide du Console de gestion AWS ou des éléments AWS CLI suivants :

Console de gestion AWS
Trouvez l'URL de l'application à l'aide du Console de gestion AWS
  1. Ouvrez la console CloudFormation.

  2. Choisissez la scorekeep pile dans la liste.

  3. Cliquez sur l'onglet Sorties sur la page de la scorekeep pile, puis choisissez le lien LoadBalancerUrl URL pour ouvrir l'application Web.

AWS CLI
Trouvez l'URL de l'application à l'aide du AWS CLI
  1. Utilisez la commande suivante pour afficher l'URL de l'application Web :

    aws cloudformation describe-stacks --stack-name scorekeep --query "Stacks[0].Outputs[0].OutputValue"
  2. Copiez cette URL et ouvrez-la dans un navigateur pour afficher l'application Web Scorekeep.

Utiliser l'application Web pour générer des données de trace
  1. Choisissez Create pour créer un utilisateur et une session.

  2. Saisissez un nom de jeu, définissez les règles sur Tic Tac Toe, puis choisissez Create pour créer un jeu.

  3. Choisissez Play pour lancer le jeu.

  4. Choisissez une case pour jouer et modifier l'état du jeu.

Chacune de ces étapes génère des requêtes HTTP à l'API et des appels en aval à DynamoDB pour lire et écrire des données sur les utilisateurs, les sessions, les jeux, les déplacements et les états.

Consultez la carte des traces dans Console de gestion AWS

Vous pouvez consulter la carte de trace et les traces générées par l'exemple d'application dans les CloudWatch consoles X-Ray et.

X-Ray console
Utiliser la X-Ray console
  1. Ouvrez la page de la carte de trace de la X-Ray console.

  2. La console affiche une représentation du graphique de service X-Ray généré à partir des données de trace envoyées par l'application. Assurez-vous d'ajuster la période de la carte de trace si nécessaire, pour vous assurer qu'elle affichera toutes les traces depuis le premier démarrage de l'application Web.

    X-Ray période de traçage de la carte

La carte de trace montre le client de l'application Web, l'API exécutée dans Amazon ECS et chaque table DynamoDB utilisée par l'application. Chaque demande à l'application, jusqu'à un nombre maximal de demandes configurables par seconde, est suivi lorsqu'il atteint l'API, génère des demandes aux services en aval, et se termine.

Vous pouvez choisir n'importe quel nœud dans le graphique de services pour afficher les suivis des demandes ayant généré du trafic vers ce nœud. Actuellement, le nœud Amazon SNS est jaune. Explorez ce nœud pour savoir pourquoi.

X-Ray page de carte de suivi de la console
Pour trouver la cause de l'erreur
  1. Choisissez le nœud nommé SNS. Le panneau des détails du nœud s'affiche.

  2. Choisissez View traces (Afficher les suivis) pour accéder à l'écran Trace overview (Présentation des suivis).

  3. Choisissez le suivi depuis la Trace list (Liste des suivis). Ce suivi n'est pas associé à une méthode ou une URL, car il a été enregistré au démarrage et non en réponse à une demande entrante.

    Sélection d'un suivi à partir de la liste des suivis
  4. Choisissez l'icône d'état d'erreur dans le segment Amazon SNS en bas de la page pour ouvrir la page Exceptions pour le sous-segment SNS.

    Choisissez l'icône d'état de l'erreur pour ouvrir la page Exceptions pour le sous-segment Amazon SNS
  5. Le X-Ray SDK capture automatiquement les exceptions lancées par les clients du AWS SDK instrumentés et enregistre la trace de la pile.

    Onglet Exceptions affichant les exceptions capturées et le suivi de la pile enregistré
CloudWatch console
Utiliser la CloudWatch console
  1. Ouvrez la page de la carte de X-Ray trace de la CloudWatch console.

  2. La console affiche une représentation du graphique de service X-Ray généré à partir des données de trace envoyées par l'application. Assurez-vous d'ajuster la période de la carte de trace si nécessaire, pour vous assurer qu'elle affichera toutes les traces depuis le premier démarrage de l'application Web.

    CloudWatch période de traçage de la carte

La carte de trace montre le client de l'application Web, l'API exécutée dans Amazon EC2 et chaque table DynamoDB utilisée par l'application. Chaque demande à l'application, jusqu'à un nombre maximal de demandes configurables par seconde, est suivi lorsqu'il atteint l'API, génère des demandes aux services en aval, et se termine.

Vous pouvez choisir n'importe quel nœud dans le graphique de services pour afficher les suivis des demandes ayant généré du trafic vers ce nœud. Actuellement, le nœud Amazon SNS est orange. Explorez ce nœud pour savoir pourquoi.

X-Ray page de carte de suivi de la console
Pour trouver la cause de l'erreur
  1. Choisissez le nœud nommé SNS. Le panneau des détails du nœud SNS s'affiche sous la carte.

  2. Choisissez Afficher les traces pour accéder à la page Traces.

  3. Ajoutez le bas de la page, choisissez la trace dans la liste des traces. Ce suivi n'est pas associé à une méthode ou une URL, car il a été enregistré au démarrage et non en réponse à une demande entrante.

    Sélection d'un suivi à partir de la liste des suivis
  4. Choisissez le sous-segment Amazon SNS en bas de la chronologie des segments, puis cliquez sur l'onglet Exceptions pour le sous-segment SNS pour afficher les détails des exceptions.

    Afficher l'onglet Exceptions pour le sous-segment Amazon SNS

La cause indique que l'adresse e-mail fournie dans un appel vers createSubscription effectué dans la classe WebConfig n'était pas valide. Dans la section suivante, nous allons résoudre ce problème.

Configuration des notifications Amazon SNS

Scorekeep utilise Amazon SNS pour envoyer des notifications lorsque les utilisateurs terminent une partie. Lorsque l'application démarre, elle essaie de créer un abonnement pour une adresse e-mail définie dans un paramètre de CloudFormation pile. Cet appel échoue actuellement. Configurez un e-mail de notification pour activer les notifications et résoudre les défaillances mises en évidence dans la carte de suivi.

Console de gestion AWS
Pour configurer les notifications Amazon SNS à l'aide du Console de gestion AWS
  1. Ouvrez la console CloudFormation.

  2. Cliquez sur le bouton radio à côté du nom de la scorekeep pile dans la liste, puis choisissez Mettre à jour.

  3. Assurez-vous que l'option Utiliser le modèle actuel est sélectionnée, puis cliquez sur Suivant sur la page Mettre à jour la pile.

  4. Recherchez le paramètre Email dans la liste et remplacez la valeur par défaut par une adresse e-mail valide.

    Mettre à jour la configuration des e-mails
  5. Faites défiler la page vers le bas, puis choisissez Next (Suivant).

  6. Accédez au bas de la page Révision, cochez la case indiquant qu'il est CloudFormation possible de créer des ressources IAM avec des noms personnalisés, puis choisissez Mettre à jour la pile.

  7. La CloudFormation pile est en cours de mise à jour. L'état de la pile UPDATE_IN_PROGRESS durera environ cinq minutes avant de passer àUPDATE_COMPLETE. Le statut sera actualisé périodiquement, ou vous pouvez actualiser la page.

AWS CLI
Pour configurer les notifications Amazon SNS à l'aide du AWS CLI
  1. Accédez au xray-scorekeep/cloudformation/ dossier que vous avez créé précédemment et ouvrez le cf-resources.yaml fichier dans un éditeur de texte.

  2. Recherchez la Default valeur dans le paramètre Email et remplacez-la par une adresse e-mail valide. UPDATE_ME

    Parameters: Email: Type: String Default: UPDATE_ME # <- change to a valid abc@def.xyz email address
  3. À partir du cloudformation dossier, mettez à jour la CloudFormation pile à l'aide de la AWS CLI commande suivante :

    aws cloudformation update-stack --stack-name scorekeep --capabilities "CAPABILITY_NAMED_IAM" --template-body file://cf-resources.yaml
  4. Attendez que l'état de la CloudFormation pile soit régléUPDATE_COMPLETE, ce qui prendra quelques minutes. Utilisez la AWS CLI commande suivante pour vérifier l'état :

    aws cloudformation describe-stacks --stack-name scorekeep --query "Stacks[0].StackStatus"

Lorsque la mise à jour est terminée, Scorekeep redémarre et crée un abonnement à la rubrique SNS. Vérifiez votre adresse e-mail et confirmez l'abonnement pour voir les mises à jour lorsque vous terminez un jeu. Ouvrez la carte de suivi pour vérifier que les appels au SNS n'échouent plus.

Exploration de l'exemple d'application

L'exemple d'application est une API Web HTTP en Java configurée pour utiliser le X-Ray SDK pour Java. Lorsque vous déployez l'application avec le CloudFormation modèle, elle crée les tables DynamoDB, Amazon ECS Cluster et les autres services nécessaires à l'exécution de Scorekeep sur ECS. Un fichier de définition de tâches pour ECS est créé via CloudFormation. Ce fichier définit les images de conteneur utilisées par tâche dans un cluster ECS. Ces images proviennent de l'ECR X-Ray public officiel. L'image du conteneur de l'API scorekeep contient l'API compilée avec Gradle. L'image du conteneur frontal Scorekeep dessert le frontend à l'aide du serveur proxy Nginx. Ce serveur achemine les requêtes vers des chemins commençant par /api vers l'API.

Pour instrumenter les demandes HTTP, l'application ajoute le TracingFilter fourni par le kit de développement logiciel.

Exemple src/main/java/scorekeep/WebConfig.java - filtre de servlet
import javax.servlet.Filter; import com.amazonaws.xray.javax.servlet.AWSXRayServletFilter; ... @Configuration public class WebConfig { @Bean public Filter TracingFilter() { return new AWSXRayServletFilter("Scorekeep"); } ...

Ce filtre envoie des données de suivi sur toutes les demandes entrantes servies par l'application, y compris l'URL de demande, la méthode, le statut de réponse, l'heure de début et de fin.

L'application effectue également des appels en aval vers DynamoDB à l'aide du. AWS SDK pour Java Pour instrumenter ces appels, l'application prend simplement les AWS SDK-related sous-modules comme dépendances, et le X-Ray SDK pour Java instrumente automatiquement tous les clients du AWS SDK.

L'application utilise Docker pour créer le code source sur instance avec le fichier Gradle Docker Image et pour exécuter le Scorekeep API Dockerfile fichier JAR exécutable que Gradle génère sur son. ENTRYPOINT

Exemple utilisation de Docker pour créer via Gradle Docker Image
docker run --rm -v /PATH/TO/SCOREKEEP_REPO/home/gradle/project -w /home/gradle/project gradle:4.3 gradle build
Exemple Dockerfile ENTRYPOINT
ENTRYPOINT [ "sh", "-c", "java -Dserver.port=5000 -jar scorekeep-api-1.0.0.jar" ]

Le fichier build.gradle télécharge les sous-modules du kit de développement logiciel à partir de Maven pendant la compilation en les déclarant comme des dépendances.

Exemple build.gradle - dépendances
... dependencies { compile("org.springframework.boot:spring-boot-starter-web") testCompile('org.springframework.boot:spring-boot-starter-test') compile('com.amazonaws:aws-java-sdk-dynamodb') compile("com.amazonaws:aws-xray-recorder-sdk-core") compile("com.amazonaws:aws-xray-recorder-sdk-aws-sdk") compile("com.amazonaws:aws-xray-recorder-sdk-aws-sdk-instrumentor") ... } dependencyManagement { imports { mavenBom("com.amazonaws:aws-java-sdk-bom:1.11.67") mavenBom("com.amazonaws:aws-xray-recorder-sdk-bom:2.11.0") } }

Les sous-modules core, AWS SDK et AWS SDK Instrumentor sont tout ce qui est nécessaire pour instrumenter automatiquement tous les appels en aval effectués avec le SDK. AWS

Pour relayer les données de segment brutes vers l' X-Ray API, le X-Ray démon doit écouter le trafic sur le port UDP 2000. Pour ce faire, l'application fait exécuter le X-Ray démon dans un conteneur qui est déployé en même temps que l'application Scorekeep sur ECS en tant que conteneur sidecar. Consultez la rubrique sur les X-Ray démons pour plus d'informations.

Exemple X-Ray Définition du conteneur de démons dans une définition de tâche ECS
... Resources: ScorekeepTaskDefinition: Type: AWS::ECS::TaskDefinition Properties: ContainerDefinitions: ... - Cpu: '256' Essential: true Image: amazon/aws-xray-daemon MemoryReservation: '128' Name: xray-daemon PortMappings: - ContainerPort: '2000' HostPort: '2000' Protocol: udp ...

Le X-Ray SDK pour Java fournit une classe nommée AWSXRay qui fournit l'enregistreur global, TracingHandler que vous pouvez utiliser pour instrumenter votre code. Vous pouvez configurer l'enregistreur mondial pour personnaliser le AWSXRayServletFilter qui crée des segments pour les appels HTTP entrants. L'exemple inclut un bloc statique dans la classe WebConfig qui configure l'enregistreur mondial avec des plug-ins et des règles d'échantillonnage.

Exemple src/main/java/scorekeep/WebConfig.java - enregistreur
import com.amazonaws.xray.AWSXRay; import com.amazonaws.xray.AWSXRayRecorderBuilder; import com.amazonaws.xray.javax.servlet.AWSXRayServletFilter; import com.amazonaws.xray.plugins.ECSPlugin; import com.amazonaws.xray.plugins.EC2Plugin; import com.amazonaws.xray.strategy.sampling.LocalizedSamplingStrategy; ... @Configuration public class WebConfig { ... static { AWSXRayRecorderBuilder builder = AWSXRayRecorderBuilder.standard().withPlugin(new ECSPlugin()).withPlugin(new EC2Plugin()); URL ruleFile = WebConfig.class.getResource("/sampling-rules.json"); builder.withSamplingStrategy(new LocalizedSamplingStrategy(ruleFile)); AWSXRay.setGlobalRecorder(builder.build()); ... } }

Cet exemple utilise le générateur pour charger des règles d'échantillonnage à partir d'un fichier nommé sampling-rules.json. Les règles d'échantillonnage déterminent le taux auquel le kit SDK enregistre des segments pour les demandes entrantes.

Exemple src/main/java/resources/règles-d'échantillon.json
{ "version": 1, "rules": [ { "description": "Resource creation.", "service_name": "*", "http_method": "POST", "url_path": "/api/*", "fixed_target": 1, "rate": 1.0 }, { "description": "Session polling.", "service_name": "*", "http_method": "GET", "url_path": "/api/session/*", "fixed_target": 0, "rate": 0.05 }, { "description": "Game polling.", "service_name": "*", "http_method": "GET", "url_path": "/api/game/*/*", "fixed_target": 0, "rate": 0.05 }, { "description": "State polling.", "service_name": "*", "http_method": "GET", "url_path": "/api/state/*/*/*", "fixed_target": 0, "rate": 0.05 } ], "default": { "fixed_target": 1, "rate": 0.1 } }

Le fichier de règles d'échantillonnage définit quatre règles personnalisées et une règle par défaut. Pour chaque demande entrante, le kit SDK évalue les règles personnalisées dans l'ordre dans lequel elles sont définies. Le kit de développement logiciel (SDK) applique la première règle qui correspond à la méthode, au chemin et au nom de service de la demande. Pour Scorekeep, la première règle intercepte toutes les demandes POST (appels de création de ressource) en appliquant un objectif fixé à une demande par seconde et un taux de 1,0 ou 100 % des demandes une fois l'objectif fixé atteint.

Les trois autres règles personnalisées appliquent un taux de 5 %, sans aucun objectif fixé concernant les lectures de session, de jeu et d'état (demandes GET). Il s'ensuit une réduction du nombre de suivis pour les appels périodiques émis automatiquement par le service frontal à quelques secondes d'intervalle pour vérifier que le contenu est à jour. Pour toutes les autres demandes, le fichier définit un taux par défaut d'une demande par seconde et un taux de 10 %.

L'exemple d'application indique également comment utiliser des fonctionnalités avancées, telles que l'instrumentation manuelle d'un client de kit de développement logiciel, la création de sous-segments supplémentaires et des appels HTTP sortants. Pour plus d’informations, consultez AWS X-Ray exemple d'application.

Facultatif : stratégie de moindre privilège

Les conteneurs Scorekeep ECS accèdent aux ressources en utilisant des politiques d'accès complet, telles AmazonSNSFullAccess que et. AmazonDynamoDBFullAccess L'utilisation de politiques d'accès complet n'est pas la meilleure pratique pour les applications de production. L'exemple suivant met à jour la politique IAM de DynamoDB afin d'améliorer la sécurité de l'application. Pour en savoir plus sur les meilleures pratiques de sécurité en matière de politiques IAM, consultez la section Gestion des identités et des accès pour AWS X-Ray.

Exemple définition du modèle cf-resources.yaml ECSTaskRole
ECSTaskRole: Type: AWS::IAM::Role Properties: AssumeRolePolicyDocument: Version: "2012-10-17" Statement: - Effect: "Allow" Principal: Service: - "ecs-tasks.amazonaws.com" Action: - "sts:AssumeRole" ManagedPolicyArns: - "arn:aws:iam::aws:policy/AmazonDynamoDBFullAccess" - "arn:aws:iam::aws:policy/AmazonSNSFullAccess" - "arn:aws:iam::aws:policy/AWSXrayFullAccess" RoleName: "scorekeepRole"

Pour mettre à jour votre politique, vous devez d'abord identifier l'ARN de vos ressources DynamoDB. Vous utilisez ensuite l'ARN dans une politique IAM personnalisée. Enfin, vous appliquez cette politique à votre profil d'instance.

Pour identifier l'ARN de votre ressource DynamoDB :
  1. Ouvrez la console DynamoDB.

  2. Choisissez Tableaux dans la barre de navigation de gauche.

  3. Choisissez l'une des options scorekeep-* pour afficher la page détaillée du tableau.

  4. Dans l'onglet Aperçu, choisissez Informations supplémentaires pour développer la section et afficher le nom de la ressource Amazon (ARN). Copiez cette valeur.

  5. Insérez l'ARN dans la politique IAM suivante, en remplaçant les AWS_ACCOUNT_ID valeurs AWS_REGION et par votre région et votre identifiant de compte spécifiques. Cette nouvelle politique n'autorise que les actions spécifiées, au lieu de la AmazonDynamoDBFullAccess politique qui autorise n'importe quelle action.

    Exemple
    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "ScorekeepDynamoDB", "Effect": "Allow", "Action": [ "dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem", "dynamodb:GetItem", "dynamodb:Scan", "dynamodb:Query" ], "Resource": "arn:aws:dynamodb:us-east-1:111122223333:table/scorekeep-*" } ] }

    Les tables créées par l'application suivent une convention de dénomination cohérente. Vous pouvez utiliser ce scorekeep-* format pour indiquer tous les tableaux Scorekeep.

Modifiez votre politique IAM
  1. Ouvrez le rôle de tâche Scorekeep (ScoreKeepRole) depuis la console IAM.

  2. Cochez la case à côté de la AmazonDynamoDBFullAccess politique et choisissez Supprimer pour supprimer cette politique.

  3. Choisissez Ajouter des autorisations, puis Joindre des politiques, et enfin Créer une politique.

  4. Choisissez l'onglet JSON et collez-y la politique créée ci-dessus.

  5. Choisissez Suivant : Tags en bas de la page.

  6. Choisissez Suivant : Réviser au bas de la page.

  7. Pour Nom, attribuez un nom à la politique.

  8. Choisissez Créer une politique en bas de la page.

  9. Associez la politique nouvellement créée au scorekeepRole rôle. L'entrée en vigueur de la politique ci-jointe peut prendre quelques minutes.

Si vous avez associé la nouvelle politique au scorekeepRole rôle, vous devez la détacher avant de supprimer la CloudFormation pile, car cette stratégie associée bloquera la suppression de la pile. La politique peut être automatiquement détachée en la supprimant.

Supprimer votre politique IAM personnalisée
  1. Ouvrez la console IAM.

  2. Choisissez Politiques dans la barre de navigation de gauche.

  3. Recherchez le nom de stratégie personnalisé que vous avez créé plus tôt dans cette section et cliquez sur le bouton radio à côté du nom de la stratégie pour le mettre en surbrillance.

  4. Choisissez la liste déroulante Actions, puis sélectionnez Supprimer.

  5. Tapez le nom de la politique personnalisée, puis choisissez Supprimer pour confirmer la suppression. Cela détachera automatiquement la politique du scorekeepRole rôle.

Nettoyage

Pour supprimer les ressources de l'application Scorekeep, procédez comme suit :

Note

Si vous avez créé et joint des politiques personnalisées à l'aide de la section précédente de ce didacticiel, vous devez supprimer la stratégie de la pile scorekeepRole avant de supprimer la CloudFormation pile.

Console de gestion AWS
Supprimez l'exemple d'application à l'aide du Console de gestion AWS
  1. Ouvrez la console CloudFormation.

  2. Cliquez sur le bouton radio à côté du nom de la scorekeep pile dans la liste, puis choisissez Supprimer.

  3. La CloudFormation pile est en train d'être supprimée. L'état de la pile sera maintenu DELETE_IN_PROGRESS pendant quelques minutes jusqu'à ce que toutes les ressources soient supprimées. Le statut sera actualisé périodiquement, ou vous pouvez actualiser la page.

AWS CLI
Supprimez l'exemple d'application à l'aide du AWS CLI
  1. Entrez la AWS CLI commande suivante pour supprimer la CloudFormation pile :

    aws cloudformation delete-stack --stack-name scorekeep
  2. Attendez que la CloudFormation pile n'existe plus, ce qui prendra environ cinq minutes. Utilisez la AWS CLI commande suivante pour vérifier l'état :

    aws cloudformation describe-stacks --stack-name scorekeep --query "Stacks[0].StackStatus"

Étapes suivantes

Apprenez-en plus X-Ray dans le chapitre suivant,AWS X-Ray concepts.

Pour instrumenter votre propre application, apprenez-en plus sur le X-Ray SDK pour Java ou l'un des autres X-Ray SDK :

Pour exécuter le X-Ray démon localement ou sur AWS. AWS X-Ray daemon

Pour contribuer à l'exemple d'application sur GitHub, consultez https://github.com/awslabs/eb-java-scorekeep/tree/xray-gettingstarted eb-java-scorekeep.