Démarrage rapide : autorisez vos instances Amazon EC2 exécutant Windows Server 2016 à envoyer des journaux à Logs à l'aide de l' CloudWatch agent CloudWatch Logs - Amazon CloudWatch Logs

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émarrage rapide : autorisez vos instances Amazon EC2 exécutant Windows Server 2016 à envoyer des journaux à Logs à l'aide de l' CloudWatch agent CloudWatch Logs

Astuce

CloudWatch inclut un nouvel agent unifié capable de collecter à la fois des journaux et des métriques à partir d'instances EC2 et de serveurs sur site. Nous vous recommandons d'utiliser le nouvel agent CloudWatch unifié. Pour de plus amples informations, veuillez consulter Commencer à utiliser CloudWatch Logs.

Le reste de cette section explique l'utilisation de l'ancien agent CloudWatch Logs.

Permettez à vos instances Amazon EC2 exécutant Windows Server 2016 d'envoyer des journaux à Logs à l'aide de l'ancien CloudWatch agent CloudWatch Logs

Vous pouvez utiliser plusieurs méthodes pour permettre aux instances exécutant Windows Server 2016 d'envoyer des CloudWatch journaux à Logs. Les étapes de cette section utilisent la fonctionnalité Run Command de Systems Manager. Pour plus d'informations sur les autres méthodes possibles, consultez la section Envoi de journaux, d'événements et de compteurs de performance à Amazon CloudWatch.

Téléchargement de l'exemple de fichier de configuration

Téléchargez le fichier d'exemple suivant sur votre ordinateur : AWS.EC2.Windows.CloudWatch.json.

Configurez le fichier JSON pour CloudWatch

Vous déterminez les journaux à envoyer CloudWatch en spécifiant vos choix dans un fichier de configuration. Le processus de création de ce fichier et la spécification des options peuvent prendre 30 minutes ou plus. Après avoir effectué cette tâche une fois, vous pouvez réutiliser le fichier de configuration sur toutes vos instances.

Étape 1 : activer CloudWatch les journaux

Dans la partie supérieure du fichier JSON, remplacez « false » par « true » pour IsEnabled :

"IsEnabled": true,

Étape 2 : Configuration des paramètres pour CloudWatch

Indiquez les informations d'identification, la région, le nom du groupe de journaux et l'espace de noms du flux de journaux. Cela permet à l'instance d'envoyer des données de journal à CloudWatch Logs. Pour envoyer les mêmes données de journal à différents emplacements, vous pouvez ajouter des sections supplémentaires avec des identifiants uniques (par exemple, « CloudWatchLogs 2 » et CloudWatchLogs « 3 ») et une région différente pour chaque identifiant.

Pour configurer les paramètres d'envoi des données de journal à CloudWatch Logs
  1. Dans le fichier JSON, localisez la section CloudWatchLogs.

    { "Id": "CloudWatchLogs", "FullName": "AWS.EC2.Windows.CloudWatch.CloudWatchLogsOutput,AWS.EC2.Windows.CloudWatch", "Parameters": { "AccessKey": "", "SecretKey": "", "Region": "us-east-1", "LogGroup": "Default-Log-Group", "LogStream": "{instance_id}" } },
  2. Laissez les champs AccessKey et SecretKey vides. Vous configurez les informations d'identification à l'aide d'un rôle IAM.

  3. Pour Region, saisissez la région vers laquelle envoyer les données des journaux (par exemple, us-east-2).

  4. Pour LogGroup, saisissez le nom de votre groupe de journaux. Ce nom s'affiche sur l'écran Groupes de journaux dans la console CloudWatch.

  5. Pour LogStream, saisissez le flux de journal de destination. Ce nom apparaît sur l'écran Log Groups > Streams de la CloudWatch console.

    Si vous utilisez {instance_id}, la valeur par défaut, le nom de flux de journal est l'ID de l'instance.

    Si vous spécifiez un nom de flux de journal qui n'existe pas encore, CloudWatch Logs le crée automatiquement pour vous. Vous pouvez définir un nom de flux de journal à l'aide d'une chaîne littérale, des variables prédéfinies {instance_id}, {hostname} et {ip_address}, ou d'une combinaison de celles-ci.

Étape 3 : Configurer les données à envoyer

Vous pouvez envoyer des données du journal des événements, des données de suivi des événements pour Windows (ETW) et d'autres données du journal à CloudWatch Logs.

Pour envoyer les données du journal des événements des applications Windows à CloudWatch Logs
  1. Dans le fichier JSON, localisez la section ApplicationEventLog.

    { "Id": "ApplicationEventLog", "FullName": "AWS.EC2.Windows.CloudWatch.EventLog.EventLogInputComponent,AWS.EC2.Windows.CloudWatch", "Parameters": { "LogName": "Application", "Levels": "1" } },
  2. Pour Levels, spécifiez le type de messages à charger. Vous pouvez spécifier l’une des valeurs suivantes :

    • 1 - Chargez uniquement les messages d'erreur.

    • 2 - Chargez uniquement les messages d'avertissement.

    • 4 - Chargez uniquement les messages d'information.

    Vous pouvez associer des valeurs pour inclure plusieurs types de message. Par exemple, la valeur 3 charge les messages d'erreur (1) et les messages d'avertissement (2). La valeur 7 charge les messages d'erreur (1), les messages d'avertissement (2) et les messages d'information (4).

Pour envoyer les données du journal de sécurité à CloudWatch Logs
  1. Dans le fichier JSON, localisez la section SecurityEventLog.

    { "Id": "SecurityEventLog", "FullName": "AWS.EC2.Windows.CloudWatch.EventLog.EventLogInputComponent,AWS.EC2.Windows.CloudWatch", "Parameters": { "LogName": "Security", "Levels": "7" } },
  2. Pour Levels, saisissez 7 pour charger tous les messages.

Pour envoyer les données du journal des événements du système à CloudWatch Logs
  1. Dans le fichier JSON, localisez la section SystemEventLog.

    { "Id": "SystemEventLog", "FullName": "AWS.EC2.Windows.CloudWatch.EventLog.EventLogInputComponent,AWS.EC2.Windows.CloudWatch", "Parameters": { "LogName": "System", "Levels": "7" } },
  2. Pour Levels, spécifiez le type de messages à charger. Vous pouvez spécifier l’une des valeurs suivantes :

    • 1 - Chargez uniquement les messages d'erreur.

    • 2 - Chargez uniquement les messages d'avertissement.

    • 4 - Chargez uniquement les messages d'information.

    Vous pouvez associer des valeurs pour inclure plusieurs types de message. Par exemple, la valeur 3 charge les messages d'erreur (1) et les messages d'avertissement (2). La valeur 7 charge les messages d'erreur (1), les messages d'avertissement (2) et les messages d'information (4).

Pour envoyer d'autres types de données du journal des événements à CloudWatch Logs
  1. Dans le fichier JSON, ajoutez une nouvelle section. Chaque section doit avoir un Id unique.

    { "Id": "Id-name", "FullName": "AWS.EC2.Windows.CloudWatch.EventLog.EventLogInputComponent,AWS.EC2.Windows.CloudWatch", "Parameters": { "LogName": "Log-name", "Levels": "7" } },
  2. Pour Id, tapez un nom pour le journal à charger (par exemple, WindowsBackup).

  3. Pour LogName, saisissez le nom du journal à charger. Vous pouvez trouver le nom du journal comme suit.

    1. Ouvrez l'Observateur d'événements

    2. Dans le panneau de navigation, cliquez sur Journaux d'applications et de services.

    3. Naviguez jusqu'au journal, puis choisissez Actions, Propriétés.

  4. Pour Levels, spécifiez le type de messages à charger. Vous pouvez spécifier l’une des valeurs suivantes :

    • 1 - Chargez uniquement les messages d'erreur.

    • 2 - Chargez uniquement les messages d'avertissement.

    • 4 - Chargez uniquement les messages d'information.

    Vous pouvez associer des valeurs pour inclure plusieurs types de message. Par exemple, la valeur 3 charge les messages d'erreur (1) et les messages d'avertissement (2). La valeur 7 charge les messages d'erreur (1), les messages d'avertissement (2) et les messages d'information (4).

Pour envoyer des données de suivi des événements pour Windows à CloudWatch Logs

ETW (Event Tracing for Windows, suivi d'événements pour Windows) fournit un mécanisme de journalisation efficace et détaillé dans lequel les applications peuvent consigner des journaux. Chaque ETW est contrôlé par un gestionnaire de session qui peut démarrer et arrêter la session de journalisation. Chaque session a un fournisseur et un ou plusieurs utilisateurs.

  1. Dans le fichier JSON, localisez la section ETW.

    { "Id": "ETW", "FullName": "AWS.EC2.Windows.CloudWatch.EventLog.EventLogInputComponent,AWS.EC2.Windows.CloudWatch", "Parameters": { "LogName": "Microsoft-Windows-WinINet/Analytic", "Levels": "7" } },
  2. Pour LogName, saisissez le nom du journal à charger.

  3. Pour Levels, spécifiez le type de messages à charger. Vous pouvez spécifier l’une des valeurs suivantes :

    • 1 - Chargez uniquement les messages d'erreur.

    • 2 - Chargez uniquement les messages d'avertissement.

    • 4 - Chargez uniquement les messages d'information.

    Vous pouvez associer des valeurs pour inclure plusieurs types de message. Par exemple, la valeur 3 charge les messages d'erreur (1) et les messages d'avertissement (2). La valeur 7 charge les messages d'erreur (1), les messages d'avertissement (2) et les messages d'information (4).

Pour envoyer des journaux personnalisés (n'importe quel fichier journal texte) à Logs CloudWatch
  1. Dans le fichier JSON, localisez la section CustomLogs.

    { "Id": "CustomLogs", "FullName": "AWS.EC2.Windows.CloudWatch.CustomLog.CustomLogInputComponent,AWS.EC2.Windows.CloudWatch", "Parameters": { "LogDirectoryPath": "C:\\CustomLogs\\", "TimestampFormat": "MM/dd/yyyy HH:mm:ss", "Encoding": "UTF-8", "Filter": "", "CultureName": "en-US", "TimeZoneKind": "Local", "LineCount": "5" } },
  2. Pour LogDirectoryPath, saisissez le chemin d'accès où les journaux sont stockés sur votre instance.

  3. Pour TimestampFormat, saisissez le format d'horodatage que vous voulez utiliser. Pour plus d'informations sur les valeurs prises en charge, consultez la rubrique Chaînes de format de date et d'heure personnalisées sur MSDN.

    Important

    Votre fichier journal source doit avoir l'horodatage au début de chaque ligne de journal et un espace après l'horodatage.

  4. Pour Encoding, tapez l'encodage de fichier à utiliser (par exemple, UTF-8). Pour obtenir une liste des valeurs prises en charge, consultez la rubrique Classe d'encodage sur MSDN.

    Note

    Utilisez le nom d'encodage, pas le nom complet.

  5. (Facultatif) Pour Filter, tapez le préfixe des noms de journaux. Laissez ce paramètre vide de façon à surveiller tous les fichiers. Pour plus d'informations sur les valeurs prises en charge, consultez la rubrique FileSystemWatcherFilter Propriétés sur MSDN.

  6. (Facultatif) Pour CultureName, saisissez les paramètres régionaux où l'horodatage est consigné. Si CultureName est vide, il prend par défaut les mêmes paramètres régionaux que ceux actuellement utilisés par votre instance de Windows. Pour plus d'informations, consultez la colonne Language tag du tableau de la rubrique Product Behavior sur MSDN.

    Note

    Les valeurs div, div-MV, hu et hu-HU ne sont pas prises en charge.

  7. (Facultatif) Pour TimeZoneKind, tapez Local ou UTC. Vous pouvez définir ce paramètre pour fournir des informations de fuseau horaire si aucune n'est comprise dans l'horodatage de vos journaux. Si ce paramètre est laissé vide et si votre horodatage n'inclut aucune information de fuseau horaire, CloudWatch Logs utilise par défaut le fuseau horaire local. Ce paramètre est ignoré si votre horodatage contient déjà des informations de fuseau horaire.

  8. (Facultatif) Pour LineCount, saisissez le nombre de lignes dans l'en-tête pour identifier le fichier journal. Par exemple, les fichiers journaux IIS ont des en-têtes presque identiques. Vous pouvez entrer 5, qui lit les trois premières lignes de l'en-tête du fichier journal pour l'identifier. Dans les fichiers journaux IIS, la troisième ligne contient la date et l'horodatage, mais l'horodatage n'est pas toujours différent d'un fichier journal à l'autre. Pour cette raison, nous recommandons d'inclure au moins une ligne de données de journaux réelles pour affecter une empreinte unique au fichier journal.

Pour envoyer les données du journal IIS à CloudWatch Logs
  1. Dans le fichier JSON, localisez la section IISLog.

    { "Id": "IISLogs", "FullName": "AWS.EC2.Windows.CloudWatch.CustomLog.CustomLogInputComponent,AWS.EC2.Windows.CloudWatch", "Parameters": { "LogDirectoryPath": "C:\\inetpub\\logs\\LogFiles\\W3SVC1", "TimestampFormat": "yyyy-MM-dd HH:mm:ss", "Encoding": "UTF-8", "Filter": "", "CultureName": "en-US", "TimeZoneKind": "UTC", "LineCount": "5" } },
  2. Pour LogDirectoryPath, saisissez le dossier où les journaux IIS sont stockés pour un site individuel (par exemple, C:\inetpub\logs\LogFiles\W3SVCn).

    Note

    Seul le format de journal W3C est pris en charge. Les formats IIS, NCSA et Personnalisé ne sont pas pris en charge.

  3. Pour TimestampFormat, saisissez le format d'horodatage que vous voulez utiliser. Pour plus d'informations sur les valeurs prises en charge, consultez la rubrique Chaînes de format de date et d'heure personnalisées sur MSDN.

  4. Pour Encoding, tapez l'encodage de fichier à utiliser (par exemple, UTF-8). Pour plus d'informations sur les valeurs prises en charge, consultez la rubrique Classe d'encodage sur MSDN.

    Note

    Utilisez le nom d'encodage, pas le nom complet.

  5. (Facultatif) Pour Filter, tapez le préfixe des noms de journaux. Laissez ce paramètre vide de façon à surveiller tous les fichiers. Pour plus d'informations sur les valeurs prises en charge, consultez la rubrique FileSystemWatcherFilter Propriétés sur MSDN.

  6. (Facultatif) Pour CultureName, saisissez les paramètres régionaux où l'horodatage est consigné. Si CultureName est vide, il prend par défaut les mêmes paramètres régionaux que ceux actuellement utilisés par votre instance de Windows. Pour plus d'informations sur les valeurs prises en charge, consultez la colonne Language tag du tableau de la rubrique Product Behavior sur MSDN.

    Note

    Les valeurs div, div-MV, hu et hu-HU ne sont pas prises en charge.

  7. (Facultatif) Pour TimeZoneKind, saisissez Local ou UTC. Vous pouvez définir ce paramètre pour fournir des informations de fuseau horaire si aucune n'est comprise dans l'horodatage de vos journaux. Si ce paramètre est laissé vide et si votre horodatage n'inclut aucune information de fuseau horaire, CloudWatch Logs utilise par défaut le fuseau horaire local. Ce paramètre est ignoré si votre horodatage contient déjà des informations de fuseau horaire.

  8. (Facultatif) Pour LineCount, saisissez le nombre de lignes dans l'en-tête pour identifier le fichier journal. Par exemple, les fichiers journaux IIS ont des en-têtes presque identiques. Vous pouvez entrer 5, qui lirait les cinq premières lignes de l'en-tête du fichier journal pour l'identifier. Dans les fichiers journaux IIS, la troisième ligne contient la date et l'horodatage, mais l'horodatage n'est pas toujours différent d'un fichier journal à l'autre. Pour cette raison, nous recommandons d'inclure au moins une seule ligne de données de journaux réelles pour affecter une empreinte unique au fichier journal.

Étape 4 : Configurer le contrôle de flux

Chaque type de données doit avoir une destination correspondante dans la section Flows. Par exemple, pour envoyer le journal personnalisé, le journal ETW et le journal système à CloudWatch Logs, ajoutez-les (CustomLogs,ETW,SystemEventLog),CloudWatchLogs à la Flows section.

Avertissement

L'ajout d'une étape qui n'est pas valide bloque le flux. Par exemple, si vous ajoutez une étape de métrique de disque, mais que votre instance ne comporte pas de disque, toutes les étapes du flux sont bloquées.

Vous pouvez envoyer le même fichier journal plusieurs destinations. Par exemple, pour envoyer le journal d'application à deux destinations différentes que vous avez définies dans la section CloudWatchLogs, ajoutez ApplicationEventLog,(CloudWatchLogs,CloudWatchLogs2) à la section Flows.

Pour configurer le contrôle de flux
  1. Dans le fichier AWS.EC2.Windows.CloudWatch.json, recherchez la section Flows.

    "Flows": { "Flows": [ "PerformanceCounter,CloudWatch", "(PerformanceCounter,PerformanceCounter2), CloudWatch2", "(CustomLogs, ETW, SystemEventLog),CloudWatchLogs", "CustomLogs, CloudWatchLogs2", "ApplicationEventLog,(CloudWatchLogs, CloudWatchLogs2)" ] }
  2. Pour Flows, ajoutez chaque type de données à charger (par exemple, ApplicationEventLog) et sa destination (par exemple, CloudWatchLogs).

Étape 5 : Enregistrer le contenu JSON

Vous avez maintenant terminé de modifier le fichier JSON. Enregistrez et collez le contenu du fichier dans un éditeur de texte dans une autre fenêtre. Vous aurez besoin du contenu du fichier lors d'une étape ultérieure de cette procédure.

Création d'un rôle IAM pour Systems Manager

Un rôle IAM pour les informations d'identification de l'instance est obligatoire lorsque vous utilisez la fonctionnalité Run Command de Systems Manager. Ce rôle permet à Systems Manager d'exécuter des actions sur l'instance. Pour plus d'informations, consultez Configuration des rôles de sécurité pour Systems Manager dans le Guide de l'utilisateurAWS Systems Manager . Pour plus d'informations sur l'affectation d'un rôle IAM à une instance existante, consultez Attachement d'un rôle IAM à une instance dans le Guide de l'utilisateur Amazon EC2 pour les instances Windows.

Vérification des prérequis de Systems Manager

Avant d'utiliser Systems Manager Run Command pour configurer l'intégration avec CloudWatch Logs, vérifiez que vos instances répondent aux exigences minimales. Pour plus d'informations, consultez Systems Manager Prerequisites (Prérequis de Systems Manager) dans le Guide de l'utilisateurAWS Systems Manager .

Vérification de l'accès Internet

Vos instances Amazon EC2 Windows Server et vos instances gérées doivent disposer d'un accès Internet sortant pour pouvoir envoyer des données de journal et d'événement à. CloudWatch Pour plus d'informations sur la configuration de l'accès à Internet, consultez Internet Gateways (Passerelles Internet) dans le Guide de l'utilisateur Amazon VPC.

Activer CloudWatch les journaux à l'aide de la commande Run de Systems Manager

La fonctionnalité Exécuter la commande vous permet de gérer la configuration de vos instances à la demande. Spécifiez un document Systems Manager, fournissez des paramètres et exécutez la commande sur une ou plusieurs instances. Le SSM Agent sur l'instance traite la commande et configure l'instance comme indiqué.

Pour configurer l'intégration aux CloudWatch journaux à l'aide de la commande Run
  1. Ouvrez la console Amazon EC2 à l’adresse https://console.aws.amazon.com/ec2/.

  2. Ouvrez la console SSM à l'adresse https://console.aws.amazon.com/systems-manager/.

  3. Dans le panneau de navigation, choisissez Fonctionnalité Exécuter la commande.

  4. Choisissez Run a Command.

  5. Pour le document de commande, choisissez AWS- ConfigureCloudWatch.

  6. Pour les instances Target, choisissez les instances à intégrer à CloudWatch Logs. Si vous ne voyez pas une instance dans cette liste, c'est qu'elle n'est peut-être pas configurée pour l'exécution de la commande. Pour plus d'informations, consultez Prérequis de Systems Manager dans le Guide de l'utilisateur Amazon EC2 pour les instances Windows.

  7. Pour Statut, sélectionnez Enabled.

  8. Pour Propriétés, copiez et collez le contenu JSON que vous avez créé lors des tâches précédentes.

  9. Complétez les champs facultatifs restants et choisissez Run.

Utilisez la procédure suivante pour afficher les résultats de l'exécution d'une commande dans la console Amazon EC2.

Pour afficher la sortie de commande dans la console
  1. Sélectionnez une commande.

  2. Choisissez l'onglet Output.

  3. Choisissez View Output. La page de sortie de la commande illustre les résultats de l'exécution de votre commande.