Liez le journal Docker à AWS CloudWatch et surveillez en temps réel avec VS Code

introduction

Le journal du service (géré par docker-compose) s'exécutant sur le conteneur Docker dans AWS EC2 est renvoyé vers CloudWatch Logs et la procédure jusqu'à la surveillance en temps réel avec VS Code est résumée.

--À propos du pilote de journal de Docker

À propos du pilote de journal de Docker

La fonction standard de Docker est de sortir le journal dans le conteneur dans / var / lib / docker / containers /. Par conséquent, il n'est pas nécessaire d'utiliser Linux logrotate etc. Un exemple d'implémentation avec docker-compose est le suivant.

docker-compose.yml


version: "3"
services:
  hello:
    image: "busybox:latest"
    logging:
      driver: "json-file"
      options:
        max-size: "10m"
        max-file: "3"

S'inscrire aux journaux CloudWatch

Vous pouvez utiliser le pilote de journal Docker décrit ci-dessus pour changer la destination de sortie du journal en CloudWatch Logs. Un exemple d'implémentation avec docker-compose est le suivant.

docker-compose.yml


version: '3'
services:
  app:
    build:
      context: .
      dockerfile: prod/Dockerfile
    restart: always
    expose:
      - 8000
    environment:
      - TZ=Asia/Tokyo
    logging:
      driver: awslogs
      options:
        awslogs-region: ap-northeast-1
        awslogs-group: log-group-name
        tag: "{{.ImageName}}.{{.Name}}.{{.FullID}}"
  nginx:
    build:
      context: .
      dockerfile: nginx/Dockerfile
    restart: always
    ports:
      - 8080:80
    depends_on:
      - app
    logging:
      driver: awslogs
      options:
        awslogs-region: ap-northeast-1
        awslogs-group: log-group-name
        tag: "{{.ImageName}}.{{.Name}}.{{.FullID}}"

Dans docker-compose, décrivez les paramètres du pilote de journal pour chaque service. Écrivez le nom du groupe de journaux créé dans la console de gestion dans ʻawslogs-group`.

À propos de l'extension AWS de VS Code et affichage des journaux

Si vous saisissez ʻaws dans la fenêtre de recherche de l'extension VS Code, ʻAWS Toolkit comme indiqué dans l'image ci-dessous s'affichera. スクリーンショット 2020-09-29 17.43.59.png Suivez les instructions pour définir la région et la clé d'accès. スクリーンショット 2020-09-29 17.47.32.png Lorsque vous ouvrez l'onglet Cloud Watch Logs dans l'image ci-dessus, le groupe de journaux s'affiche. Cliquez avec le bouton droit de la souris et sélectionnez afficher le flux de journaux. Si vous installez l'extension Output Colorizer, vous pouvez voir le journal avec des surbrillances, il est donc recommandé de l'inclure.

référence

Recommended Posts

Liez le journal Docker à AWS CloudWatch et surveillez en temps réel avec VS Code
Créez une clé privée / clé publique dans CentOS8.2 et connectez-vous à SSH avec VS Code
Gestion Docker avec VS Code
Agrégation et analyse de journaux (utilisation d'AWS Athena en Java)
Comment obtenir des valeurs en temps réel avec TextWatcher (Android)
Exemple de code pour analyser la date et l'heure avec SimpleDateFormat de Java
Comment surveiller les informations d'application en temps réel à l'aide de JConsole
Résumé des procédures de développement dans un conteneur Docker avec VS Code
Premiers pas avec Docker avec VS Code
Mettez Zabbix dans Ubuntu avec Docker et surveillez Docker sur le même hôte
Lier le code Java et C ++ avec SWIG
J'ai essayé de créer un portefeuille avec AWS, Docker, CircleCI, Laravel [avec lien de référence]
Découvrez .NET 5 avec Docker et Visual Studio Code
Essayez d'intégrer Ruby et Java avec Dapr
Comment implémenter UICollectionView avec du code uniquement dans Swift
Changer la date et l'heure en notation japonaise dans Rails
Comment afficher un aperçu du navigateur avec VS Code
Comment supprimer des images non balisées en masse avec Docker
Comment créer un environnement de développement Java avec VS Code
Comment lancer Swagger UI et Swagger Editor dans Docker
Avec podman dans docker, tout le monde veut s'entendre et utiliser docker avec un ordinateur partagé
Emplacement des paramètres de l'espace de travail lors de la connexion à distance avec VSCode et du travail sur un conteneur Docker