Récupération des informations de diagnostic d’Amazon ECS avec l’introspection d’agent
L’API d’introspection d’agent Amazon ECS fournit des informations sur l’état général de l’agent Amazon ECS et des instances de conteneur.
Vous pouvez utiliser l’API d’introspection d’agent pour obtenir l’ID Docker d’un conteneur dans votre tâche. Vous pouvez aussi utiliser l'API d'introspection d'agent en vous connectant à une instance de conteneur à l'aide de SSH.
Important
Votre instance de conteneur doit avoir un rôle IAM qui autorise l'accès à Amazon ECS afin d'atteindre l'API d'introspection. Pour de plus amples informations, consultez Rôle IAM d'instance de conteneur Amazon ECS.
L’exemple suivant illustre deux tâches : une en cours d’exécution et une qui a été arrêtée.
Note
La commande suivante est redirigée via python -mjson.tool pour une lecture plus facile.
curl http://localhost:51678/v1/tasks | python -mjson.tool
Sortie :
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1095 100 1095 0 0 117k 0 --:--:-- --:--:-- --:--:-- 133k
{
"Tasks": [
{
"Arn": "arn:aws:ecs:us-west-2:aws_account_id:task/090eff9b-1ce3-4db6-848a-a8d14064fd24",
"Containers": [
{
"DockerId": "189a8ff4b5f04affe40e5160a5ffadca395136eb5faf4950c57963c06f82c76d",
"DockerName": "ecs-console-sample-app-static-6-simple-app-86caf9bcabe3e9c61600",
"Name": "simple-app"
},
{
"DockerId": "f7f1f8a7a245c5da83aa92729bd28c6bcb004d1f6a35409e4207e1d34030e966",
"DockerName": "ecs-console-sample-app-static-6-busybox-ce83ce978a87a890ab01",
"Name": "busybox"
}
],
"Family": "console-sample-app-static",
"KnownStatus": "STOPPED",
"Version": "6"
},
{
"Arn": "arn:aws:ecs:us-west-2:aws_account_id:task/1810e302-eaea-4da9-a638-097bea534740",
"Containers": [
{
"DockerId": "dc7240fe892ab233dbbcee5044d95e1456c120dba9a6b56ec513da45c38e3aeb",
"DockerName": "ecs-console-sample-app-static-6-simple-app-f0e5859699a7aecfb101",
"Name": "simple-app"
},
{
"DockerId": "096d685fb85a1ff3e021c8254672ab8497e3c13986b9cf005cbae9460b7b901e",
"DockerName": "ecs-console-sample-app-static-6-busybox-92e4b8d0ecd0cce69a01",
"Name": "busybox"
}
],
"DesiredStatus": "RUNNING",
"Family": "console-sample-app-static",
"KnownStatus": "RUNNING",
"Version": "6"
}
]
}Dans l’exemple ci-dessus, la tâche arrêtée (090eff9b-1ce3-4db6-848a-a8d14064fd24) a deux conteneurs. Vous pouvez utiliser docker inspect
container-ID pour afficher des informations détaillées sur chaque conteneur. Pour de plus amples informations, consultez Introspection de conteneur Amazon ECS.