Comment collecter automatiquement les journaux de mon instance de conteneur Amazon ECS ?

Date de la dernière mise à jour : 16/09/2019

Je dépanne mon environnement Amazon Elastic Container Service (Amazon ECS) ou ouvre un dossier auprès d'AWS Support. Pour cela, je dois collecter divers journaux de mes instances de conteneur. Comment faire ?

Brève description

Le collecteur de journaux Amazon ECS est un script qui collecte les journaux automatiquement à partir de votre instance de conteneur. Le script collecte les journaux de systèmes d'exploitation généraux ainsi que les journaux de processus Docker et d'agents de conteneur Amazon ECS. Ensuite, le script compresse et archive les journaux dans un fichier unique que vous pouvez facilement partager lors d'un dépannage.

Le collecteur de journaux Amazon ECS prend en charge les systèmes d'exploitation suivants :

  • Amazon Linux
  • Red Hat Enterprise Linux 7
  • Debian 8
  • Ubuntu 14.04
  • Windows 2016

Résolution

Téléchargez et exécutez le collecteur de journaux Amazon ECS pour Linux.

1.    Connectez-vous à votre instance de conteneur.

2.    Pour vérifier que CURL est installé, exécutez la commande suivante :

curl --version

La sortie de la commande doit être semblable à celle ci-dessous :

curl 7.47.0 (x86_64-pc-linux-gnu) libcurl/7.47.0 GnuTLS/3.4.10 zlib/1.2.8 libidn/1.32 librtmp/2.3

Remarque : si la commande ne renvoie pas les résultats attendus, installez le package CURL.

3.    Pour télécharger le script de collecteur de journaux Amazon ECS, exécutez la commande suivante :

curl -O https://raw.githubusercontent.com/awslabs/ecs-logs-collector/master/ecs-logs-collector.sh

4.    Pour collecter les journaux et créer une archive à l'aide du script, exécutez la commande suivante :

[ec2-user ~]$ sudo bash ./ecs-logs-collector.sh

Après avoir exécuté le script, vous pouvez examiner les journaux collectés dans le dossier collect créé par le script. Dans le dossier, vous trouverez le fichier collect.tgz, qui est une archive compressée de tous les journaux.

Téléchargez le collecteur de journaux Amazon ECS en mode débogage pour Linux.

Si les journaux ne fournissent pas toutes les informations dont vous avez besoin, vous pouvez activer la journalisation de débogage pour le démon Docker et l'agent de conteneur Amazon ECS avec l'option --mode=enable-debug. Cette option permet au script de collecter les journaux avant d'activer le mode débogage. Le script redémarre le démon Docker et l'agent Amazon ECS, puis met fin à tous les conteneurs en cours d'exécution sur l'instance. Avant d'exécuter la commande suivante, pensez à drainer l'instance de conteneur et à transférer les tâches importantes vers d'autres instances de conteneur. Pour plus d'informations, consultez la section Drainage des instances de conteneur.

Pour activer le mode débogage lorsque vous exécutez le script, exécutez la commande suivante :

[ec2-user ~]$ sudo bash ./ecs-logs-collector.sh --mode=enable-debug

Téléchargez et exécutez le collecteur de journaux Amazon ECS pour Windows.

1.    Connectez-vous à votre instance de conteneur.

2.    Pour télécharger le script, ouvrez Windows PowerShell avec les privilèges d'administrateur, puis exécutez la commande suivante :

Invoke-WebRequest -OutFile ecs-logs-collector.ps1 https://raw.githubusercontent.com/awslabs/aws-ecs-logs-collector-for-windows/master/ecs-logs-collector.ps1

3.    Dans la même fenêtre, exécutez le script suivant pour collecter les journaux et créer l'archive :

.\ecs-logs-collector.ps1

Après avoir exécuté le script, vous pouvez examiner les journaux collectés dans le dossier collect créé par le script. Dans le dossier, se trouve le fichier collect.tgz, qui est une archive compressée de tous les journaux.

Téléchargez le collecteur de journaux Amazon ECS en mode débogage pour Windows.

Si les journaux ne fournissent pas toutes les informations dont vous avez besoin, vous pouvez activer la journalisation de débogage pour le processus Docker et l'agent de conteneur Amazon ECS avec l'option -RunMode debug. Cette option permet au script de collecter les journaux avant d'activer le mode débogage. Le script redémarre le démon Docker et l'agent Amazon ECS, puis met fin à tous les conteneurs en cours d'exécution sur l'instance. Avant d'exécuter la commande suivante, pensez à drainer l'instance de conteneur et à transférer les tâches importantes vers d'autres instances de conteneur. Pour plus d'informations, consultez la section Drainage des instances de conteneur.

Pour activer le mode de débogage lorsque vous exécutez le script, exécutez la commande suivante en utilisant Windows PowerShell avec les privilèges d'administrateur:

.\ecs-logs-collector.ps1 -RunMode debug

Cette page vous a-t-elle été utile ?

Cette page peut-elle être améliorée ?


Vous avez besoin d'aide ?