Início rápido: habilitar suas instâncias do Amazon EC2 que executam o Windows Server 2016 para enviar logs ao CloudWatch Logs usando o agente do 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 2016 para enviar logs ao CloudWatch Logs usando o agente do 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 2016 para enviar logs ao CloudWatch Logs usando o agente do CloudWatch Logs mais antigo

Há vários métodos que você pode usar para habilitar instâncias que executam o Windows Server 2016 para enviar logs ao CloudWatch Logs. As etapas desta seção usam o Run Command do Systems Manager. Para obter informações sobre outros métodos possíveis, consulte Enviar contadores de logs, eventos e desempenho para o Amazon CloudWatch.

Baixe o arquivo de configuração de exemplo

Baixe o seguinte arquivo de amostra em seu computador: AWS.EC2.Windows.CloudWatch.json.

Configurar o arquivo JSON para o CloudWatch

Você determina os logs a serem enviados ao CloudWatch especificando suas opções em um arquivo de configuração. 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 uma lista de valores compatíveis, consulte o tópico Classe Encoding 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 a respeito, 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).

Etapa 5: Salvar conteúdo JSON

Agora você concluiu a edição do arquivo JSON. Salve-o e cole o conteúdo do arquivo em um editor de texto em outra janela. Você precisará do conteúdo do arquivo em uma etapa posterior deste procedimento.

Criar um perfil do IAM para o Systems Manager

É necessário ter uma função do IAM para credenciais de instância ao usar o Run Command do Systems Manager. Essa função permite que o Systems Manager execute ações na instância. Para obter mais informações, consulte Configurar funções de segurança para o Systems Manager no Manual do usuário do AWS Systems Manager. Para obter informações sobre como anexar esse perfil do IAM a uma instância existente, consulte Anexar uma função do IAM a uma instância, no Manual do usuário do Amazon EC2.

Verificar os pré-requisitos do Systems Manager

Antes de usar o Run Command do Systems Manager para configurar a integração com o CloudWatch Logs, verifique se as instâncias atendem aos requisitos mínimos. Para obter mais informações, consulte Pré-requisitos do Systems Manager no Manual do usuário do AWS Systems Manager.

Verificar o acesso à Internet

As instâncias do Amazon EC2 do Windows Server, e as instâncias gerenciadas devem ter acesso de saída à Internet para enviar dados de log e de eventos ao CloudWatch. Para obter mais informações sobre como configurar o acesso à Internet, consulte Gateways da Internet no Manual do usuário da Amazon VPC.

Habilite o CloudWatch Logs usando o Run Command do Systems Manager

O Run Command permite gerenciar a configuração de suas instâncias sob demanda. Você especifica um documento do Systems Manager, especifica parâmetros e executa o comando em uma ou mais instâncias. O SSM Agent na instância processa o comando e configura a instância conforme especificado.

Para configurar a integração com o CloudWatch Logs usando o Run Command
  1. Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. Abra o console do SSM em https://console.aws.amazon.com/systems-manager/.

  3. No painel de navegação, selecione Executar comando.

  4. Escolha Executar um comando.

  5. Em Command document, escolha AWS-ConfigureCloudWatch.

  6. Em Target instances (Instâncias de destino), escolha as instâncias a serem integradas ao CloudWatch Logs. Se você não vir uma instância nessa lista, ela poderá não estar configurada para Run Command. Para obter mais informações, consulte Pré-requisitos do Systems Manager no Manual do usuário do Amazon EC2.

  7. Em Status, escolha Enabled.

  8. Em Propriedades, copie e cole o conteúdo JSON que você criou nas tarefas anteriores.

  9. Preencha os campos opcionais restantes e escolha Run.

Use o seguinte procedimento para visualizar os resultados da execução do comando no console do Amazon EC2.

Para visualizar a saída do comando no console
  1. Selecione um comando.

  2. Escolha a guia Output.

  3. Escolha View Output. A página de saída do comando mostra os resultados da execução do comando.