Início rápido: habilitar suas instâncias do Amazon EC2 que executam o Windows Server 2012 e o Windows Server 2008 para enviar logs ao CloudWatch Logs - CloudWatch Registros da Amazon

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Início rápido: habilitar suas instâncias do Amazon EC2 que executam o Windows Server 2012 e o Windows Server 2008 para enviar logs ao CloudWatch Logs

dica

O CloudWatch contém um novo agente unificado que pode coletar logs e métricas de instâncias do EC2 e de servidores on-premises. Recomendamos usar o agente unificado mais recente do CloudWatch. Para ter mais informações, consulte Comece a usar o CloudWatch Logs.

O restante desta seção explica o uso do agente do CloudWatch Logs mais antigo.

Habilitar suas instâncias do Amazon EC2 que executam o Windows Server 2012 e o Windows Server 2008 para enviar logs ao CloudWatch Logs

Use as seguintes etapas para habilitar suas instâncias que executam o Windows Server 2012 e o Windows Server 2008 para enviar logs ao CloudWatch Logs.

Baixe o arquivo de configuração de exemplo

Baixe os seguintes arquivos JSON em seu computador: AWS.EC2.Windows.CloudWatch.json. Você o edita nas etapas a seguir.

Configurar o arquivo JSON para o CloudWatch

Você determina os logs a serem enviados ao CloudWatch especificando suas opções no arquivo de configuração JSON. O processo de criação desse arquivo e a especificação de suas opções pode levar 30 minutos ou mais para serem concluídos. Após concluir essa tarefa uma vez, você pode reutilizar o arquivo de configuração em todas as instâncias.

Etapa 1: ativar o CloudWatch Logs

Na parte superior do arquivo JSON, altere "false" para "true" em IsEnabled:

"IsEnabled": true,

Etapa 2: Definir as configurações do CloudWatch

Especifique as credenciais, a região, um nome de grupo de logs e um namespace de fluxo de logs. Isso permite que a instância envie dados de log ao CloudWatch Logs. Para enviar os mesmos dados de log para locais diferentes, você pode incluir seções adicionais com IDs exclusivos (por exemplo, “CloudWatchLogs2” e “CloudWatchLogs3”) e uma região diferente para cada ID.

Para definir configurações para enviar dados de log ao CloudWatch Logs
  1. No arquivo JSON, localize a seção 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. Deixe os campos AccessKey e SecretKey em branco. Você configura as credenciais usando uma função do IAM.

  3. Em Region, digite a região para a qual enviar os dados de log (por exemplo, us-east-2).

  4. Em LogGroup, digite o nome do grupo de logs. Esse nome aparece na tela Log Groups (Grupos de logs) no console do CloudWatch.

  5. Em LogStream, digite o fluxo de log de destino. Esse nome aparece na tela Log Groups > Streams (Grupos de logs > Fluxos) no console do CloudWatch.

    Se você usar {instance_id}, o padrão, o nome do fluxo de logs será o ID dessa instância.

    Se você especificar um nome de fluxo de logs que ainda não existe, o CloudWatch Logs o criará automaticamente. Você pode definir um nome de fluxo de log usando uma sequência literal, as variáveis predefinidas {hostname}, {instance_id} e {ip_address} ou uma combinação delas.

Etapa 3: Configurar os dados a serem enviados

É possível enviar dados de log de eventos, dados do rastreamento de eventos para Windows (ETW) e outros dados de log ao CloudWatch Logs.

Para enviar dados de log de eventos de aplicação do Windows para o CloudWatch Logs
  1. No arquivo JSON, localize a seção ApplicationEventLog.

    { "Id": "ApplicationEventLog", "FullName": "AWS.EC2.Windows.CloudWatch.EventLog.EventLogInputComponent,AWS.EC2.Windows.CloudWatch", "Parameters": { "LogName": "Application", "Levels": "1" } },
  2. Em Levels, especifique o tipo de mensagens das quais fazer upload. É possível especificar um dos seguintes valores:

    • 1 – fazer upload apenas de mensagens de erro.

    • 2 – fazer upload apenas de mensagens de aviso.

    • 4 – fazer upload apenas de mensagens informativas.

    Você pode combinar valores para incluir mais de um tipo de mensagem. Por exemplo, o valor 3 faz upload de mensagens de erro (1) e de mensagens de aviso (2). Um valor 7 faz upload de mensagens de erro (1), de mensagens de aviso (2) e de mensagens informativas (4).

Para enviar dados de log da ISS para o CloudWatch Logs
  1. No arquivo JSON, localize a seção SecurityEventLog.

    { "Id": "SecurityEventLog", "FullName": "AWS.EC2.Windows.CloudWatch.EventLog.EventLogInputComponent,AWS.EC2.Windows.CloudWatch", "Parameters": { "LogName": "Security", "Levels": "7" } },
  2. Em Levels, digite 7 para fazer upload de todas as mensagens.

Para enviar dados de log de eventos do sistema para o CloudWatch Logs
  1. No arquivo JSON, localize a seção SystemEventLog.

    { "Id": "SystemEventLog", "FullName": "AWS.EC2.Windows.CloudWatch.EventLog.EventLogInputComponent,AWS.EC2.Windows.CloudWatch", "Parameters": { "LogName": "System", "Levels": "7" } },
  2. Em Levels, especifique o tipo de mensagens das quais fazer upload. É possível especificar um dos seguintes valores:

    • 1 – fazer upload apenas de mensagens de erro.

    • 2 – fazer upload apenas de mensagens de aviso.

    • 4 – fazer upload apenas de mensagens informativas.

    Você pode combinar valores para incluir mais de um tipo de mensagem. Por exemplo, o valor 3 faz upload de mensagens de erro (1) e de mensagens de aviso (2). Um valor 7 faz upload de mensagens de erro (1), de mensagens de aviso (2) e de mensagens informativas (4).

Para enviar outros tipos de dados de log de eventos para o CloudWatch Logs
  1. No arquivo JSON, adicione uma nova seção. Cada seção deve ter um Id exclusivo.

    { "Id": "Id-name", "FullName": "AWS.EC2.Windows.CloudWatch.EventLog.EventLogInputComponent,AWS.EC2.Windows.CloudWatch", "Parameters": { "LogName": "Log-name", "Levels": "7" } },
  2. Em Id, digite o nome do log para fazer upload (por exemplo, WindowsBackup).

  3. Em LogName, digite o nome do log do qual fazer upload. Você pode localizar o nome do log da seguinte forma.

    1. Abra o Visualizador de eventos.

    2. No painel de navegação, escolha Applications and Services Logs.

    3. Navegue até o log e escolha Actions, Properties.

  4. Em Levels, especifique o tipo de mensagens das quais fazer upload. É possível especificar um dos seguintes valores:

    • 1 – fazer upload apenas de mensagens de erro.

    • 2 – fazer upload apenas de mensagens de aviso.

    • 4 – fazer upload apenas de mensagens informativas.

    Você pode combinar valores para incluir mais de um tipo de mensagem. Por exemplo, o valor 3 faz upload de mensagens de erro (1) e de mensagens de aviso (2). Um valor 7 faz upload de mensagens de erro (1), de mensagens de aviso (2) e de mensagens informativas (4).

Para enviar os dados de rastreamento de eventos para Windows ao CloudWatch Logs

O ETW (Rastreamento de Eventos para Windows) fornece um mecanismo de registro eficiente e detalhado no qual os aplicativos podem gravar logs. Cada ETW é controlado por um gerente de sessão que pode iniciar e parar a sessão de registro. Cada sessão tem um provedor e um ou mais consumidores.

  1. No arquivo JSON, localize a seção ETW.

    { "Id": "ETW", "FullName": "AWS.EC2.Windows.CloudWatch.EventLog.EventLogInputComponent,AWS.EC2.Windows.CloudWatch", "Parameters": { "LogName": "Microsoft-Windows-WinINet/Analytic", "Levels": "7" } },
  2. Em LogName, digite o nome do log do qual fazer upload.

  3. Em Levels, especifique o tipo de mensagens das quais fazer upload. É possível especificar um dos seguintes valores:

    • 1 – fazer upload apenas de mensagens de erro.

    • 2 – fazer upload apenas de mensagens de aviso.

    • 4 – fazer upload apenas de mensagens informativas.

    Você pode combinar valores para incluir mais de um tipo de mensagem. Por exemplo, o valor 3 faz upload de mensagens de erro (1) e de mensagens de aviso (2). Um valor 7 faz upload de mensagens de erro (1), de mensagens de aviso (2) e de mensagens informativas (4).

Para enviar logs personalizados (qualquer arquivo de log baseado em texto) ao CloudWatch Logs
  1. No arquivo JSON, localize a seção 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. Em LogDirectoryPath, digite o caminho onde os logs estão armazenados na instância.

  3. Em TimestampFormat, digite o formato do time stamp a ser usado. Para obter mais informações sobre os valores compatíveis, consulte o tópico Cadeias de caracteres de formato de data e hora personalizado no MSDN.

    Importante

    Seu arquivo de log de origem deve ter o time stamp no início de cada linha do log e deve haver um espaço depois do time stamp.

  4. Em Encoding, digite a codificação de arquivo a ser usada (por exemplo, UTF-8). Para obter mais informações sobre os valores compatíveis, consulte o tópico Encoding Class no MSDN.

    nota

    Use o nome da codificação, não o nome da exibição.

  5. (Opcional) Em Filter, digite o prefixo de nomes de logs. Deixe esse parâmetro em branco para monitorar todos os arquivos. Para obter mais informações sobre os valores compatíveis, consulte o tópico Propriedade FileSystemWatcherFilter no MSDN.

  6. (Opcional) Em CultureName, digite a localidade na qual o time stamp é registrado no log. Se CultureName ficar em branco, será adotada como padrão a mesma localidade usada atualmente pela instância do Windows. Para obter mais informações sobre os valores compatíveis, consulte a coluna Language tag na tabela no tópico Product Behavior no MSDN.

    nota

    Os valores div, div-MV, hu e hu-HU não têm suporte.

  7. (Opcional) Em TimeZoneKind, digite Local ou UTC. Você pode definir isso para fornecer informações de fuso horário quando essas informações não estiverem incluídas no time stamp do log. Se esse parâmetro for deixado em branco e se o carimbo de data/hora não incluir informações sobre fuso horário, o CloudWatch Logs adotará o fuso horário local como o padrão. Esse parâmetro será ignorado se o time stamp já incluir informações sobre o fuso horário.

  8. (Opcional) Em LineCount, digite o número de linhas do cabeçalho para identificar o arquivo de log. Por exemplo, os arquivos de log do IIS têm cabeçalhos praticamente idênticos. Você pode especificar 5, que determina a leitura das três primeiras linhas do cabeçalho do arquivo de log para identificá-lo. Nos arquivos de log do IIS, a terceira linha é o carimbo de data/hora, mas nem sempre é garantido que o carimbo será diferente entre os arquivos de log. Por esse motivo, recomendamos incluir pelo menos uma linha de dados de log reais para identificar o arquivo de log de forma exclusiva.

Enviar dados de log da ISS para o CloudWatch Logs
  1. No arquivo JSON, localize a seção 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. Em LogDirectoryPath, digite a pasta onde os logs do IIS são armazenados para um site individual (por exemplo, C:\inetpub\logs\LogFiles\W3SVCn).

    nota

    Há suporte apenas para o formato de log W3C. Não há suporte para os formatos IIS, NCSA e Personalizado.

  3. Em TimestampFormat, digite o formato do time stamp a ser usado. Para obter mais informações sobre os valores compatíveis, consulte o tópico Cadeias de caracteres de formato de data e hora personalizado no MSDN.

  4. Em Encoding, digite a codificação de arquivo a ser usada (por exemplo, UTF-8). Para obter mais informações sobre os valores compatíveis, consulte o tópico Encoding Class no MSDN.

    nota

    Use o nome da codificação, não o nome da exibição.

  5. (Opcional) Em Filter, digite o prefixo de nomes de logs. Deixe esse parâmetro em branco para monitorar todos os arquivos. Para obter mais informações sobre os valores compatíveis, consulte o tópico Propriedade FileSystemWatcherFilter no MSDN.

  6. (Opcional) Em CultureName, digite a localidade na qual o time stamp é registrado no log. Se CultureName ficar em branco, será adotada como padrão a mesma localidade usada atualmente pela instância do Windows. Para obter mais informações sobre os valores compatíveis, consulte a coluna Language tag na tabela no tópico Product Behavior no MSDN.

    nota

    Os valores div, div-MV, hu e hu-HU não têm suporte.

  7. (Opcional) Em TimeZoneKind, digite Local ou UTC. Você pode definir isso para fornecer informações de fuso horário quando essas informações não estiverem incluídas no time stamp do log. Se esse parâmetro for deixado em branco e se o carimbo de data/hora não incluir informações sobre fuso horário, o CloudWatch Logs adotará o fuso horário local como o padrão. Esse parâmetro será ignorado se o time stamp já incluir informações sobre o fuso horário.

  8. (Opcional) Em LineCount, digite o número de linhas do cabeçalho para identificar o arquivo de log. Por exemplo, os arquivos de log do IIS têm cabeçalhos praticamente idênticos. Você pode especificar 5, que leria as cinco primeiras linhas do cabeçalho do arquivo de log para identificá-lo. Nos arquivos de log do IIS, a terceira linha é o carimbo de data/hora, mas nem sempre é garantido que o carimbo será diferente entre os arquivos de log. Por esse motivo, recomendamos incluir pelo menos uma linha de dados de log reais para identificar o arquivo de log de forma exclusiva.

Etapa 4: Configurar o controle de fluxo

Cada tipo de dados deve ter um destino correspondente na seção Flows. Por exemplo, para enviar o log personalizado, o log do ETW e o log do sistema ao CloudWatch Logs, adicione (CustomLogs,ETW,SystemEventLog),CloudWatchLogs à seção do Flows.

Atenção

A adição de uma etapa inválida bloqueia o fluxo. Por exemplo, se você adicionar uma etapa de métrica de disco, mas a instância não tiver um disco, todas as etapas do fluxo serão bloqueadas.

Você pode enviar o mesmo arquivo de log a mais de um destino. Por exemplo, para enviar o log do aplicativo a dois destinos diferentes que você definiu na seção CloudWatchLogs, adicione ApplicationEventLog,(CloudWatchLogs,CloudWatchLogs2) à seção Flows.

Para configurar o controle de fluxo
  1. No arquivo AWS.EC2.Windows.CloudWatch.json, localize a seção Flows.

    "Flows": { "Flows": [ "PerformanceCounter,CloudWatch", "(PerformanceCounter,PerformanceCounter2), CloudWatch2", "(CustomLogs, ETW, SystemEventLog),CloudWatchLogs", "CustomLogs, CloudWatchLogs2", "ApplicationEventLog,(CloudWatchLogs, CloudWatchLogs2)" ] }
  2. Em Flows, adicione cada tipo de dados os quais serão feito upload (por exemplo, ApplicationEventLog) e seu destino (por exemplo, CloudWatchLogs).

Agora você concluiu a edição do arquivo JSON. Você o usa em uma etapa posterior.

Inicie o agente

Para habilitar uma instância do Amazon EC2 executando o Windows Server 2012 ou o Windows Server 2008 para enviar logs ao CloudWatch Logs, use o serviço EC2Config (EC2Config.exe)). A instância deve ter o EC2Config 4.0 ou posterior, e você pode usar esse procedimento. Para obter mais informações sobre o uso de uma versão anterior do EC2Config, consulte Usar o EC2Config 3.x ou anterior para configurar o CloudWatch no Manual do usuário do Amazon EC2

Para configurar o CloudWatch usando o EC2Config 4.x
  1. Verifique a codificação do arquivo AWS.EC2.Windows.CloudWatch.json editado anteriormente neste procedimento. Só há suporte para a codificação UTF-8 sem BOM. Em seguida, salve o arquivo na pasta a seguir na instância do Windows Server 2008 - 2012 R2: C:\Program Files\Amazon\SSM\Plugins\awsCloudWatch\.

  2. Inicie ou reinicie o SSM Agent (AmazonSSMAgent.exe) usando o painel de controle dos Serviços do Windows ou usando o seguinte comando do PowerShell:

    PS C:\> Restart-Service AmazonSSMAgent

Após a reinicialização do SSM Agent, ele detectará o arquivo de configuração e configurará a instância para integração com o CloudWatch. Se você alterar os parâmetros e as configurações no arquivo de configuração local, será necessário reiniciar o SSM Agent para que as alterações sejam efetivadas. Para desabilitar a integração com o CloudWatch na instância, altere IsEnabled para false e salve as alterações no arquivo de configuração.