Démarrage rapide : autorisez vos EC2 instances Amazon exécutant Windows Server 2012 et Windows Server 2008 à envoyer des CloudWatch journaux vers 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 EC2 instances Amazon exécutant Windows Server 2012 et Windows Server 2008 à envoyer des CloudWatch journaux vers Logs

Astuce

CloudWatch inclut un nouvel agent unifié capable de collecter à la fois des journaux et des métriques à partir d' EC2 instances 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 EC2 instances Amazon exécutant Windows Server 2012 et Windows Server 2008 d'envoyer des CloudWatch journaux vers Logs

Procédez comme suit pour permettre à vos instances exécutant Windows Server 2012 et Windows Server 2008 d'envoyer des CloudWatch journaux vers Logs.

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

Téléchargez le fichier d'exemple JSON suivant sur votre ordinateur : AWS.EC2.Windows.CloudWatch.json. Vous y apporterez des modifications lors des étapes suivantes.

Configurez le fichier JSON pour CloudWatch

Vous déterminez les journaux à envoyer CloudWatch en spécifiant vos choix dans le fichier de configuration JSON. 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 un identifiant unique IDs (par exemple, CloudWatchLogs « 2 » CloudWatchLogs et 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 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, 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).

Vous avez maintenant terminé de modifier le fichier JSON. Vous l'utiliserez dans une étape ultérieure.

Démarrage de l'agent

Pour permettre à une EC2 instance Amazon exécutant Windows Server 2012 ou Windows Server 2008 d'envoyer des CloudWatch journaux à Logs, utilisez le service EC2 Config (EC2Config.exe). Votre instance doit disposer de EC2 Config 4.0 ou d'une version ultérieure, et vous pouvez utiliser cette procédure.

Pour configurer à CloudWatch l'aide de EC2 Config 4.x
  1. Vérifiez l'encodage du fichier AWS.EC2.Windows.CloudWatch.json que vous avez déjà modifié dans cette procédure. Seul l'encodage UTF-8 sans BOM est pris en charge. Enregistrez ensuite le fichier dans le dossier suivant de votre instance Windows Server 2008 - 2012 R2 : C:\Program Files\Amazon\SSM\Plugins\awsCloudWatch\.

  2. Démarrez ou redémarrez l'agent SSM (AmazonSSMAgent.exe) à l'aide du panneau de configuration des services Windows ou à l'aide de la PowerShell commande suivante :

    PS C:\> Restart-Service AmazonSSMAgent

Après le redémarrage de l'agent SSM, il détecte le fichier de configuration et configure l'instance pour l'intégration. CloudWatch Si vous modifiez les paramètres dans le fichier de configuration local, vous devez redémarrer le SSM Agent pour appliquer les modifications. Pour désactiver CloudWatch l'intégration sur l'instance, modifiez IsEnabled false et enregistrez vos modifications dans le fichier de configuration.