

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á.

# Exemplos de configuração do Kinesis Agent para Windows


 O`appsettings.json`é um documento JSON que controla como o Amazon Kinesis Agent para Microsoft Windows coleta logs, eventos e métricas. Ele também controla como o Kinesis Agent para Windows transforma esses dados e faz streaming dele para vários serviços da AWS. Para obter detalhes sobre declarações de origem, coletor e pipe no arquivo de configuração, consulte [Declarações de origem](source-object-declarations.md), [Declarações de coletor](sink-object-declarations.md) e [Declarações de pipe](pipe-object-declarations.md). 

As seções a seguir contêm exemplos de arquivos de configuração para vários tipos diferentes de cenários. 

**Topics**
+ [

## Streaming de várias origens para o Kinesis Data Streams
](#configuring-kaw-examples-sources)
+ [

## Streaming do log de eventos de aplicativos do Windows para coletores
](#configuring-kaw-examples-sinks)
+ [

## Uso de pipes
](#configuring-kaw-examples-pipes)
+ [

## Uso de várias origens e pipes
](#configuring-kaw-examples-multiple)

## Streaming de várias origens para o Kinesis Data Streams


O exemplo a seguir`appsettings.json`Demonstram o streaming de logs e eventos de várias origens para o Kinesis Data Streams e de contadores de desempenho do Windows para as métricas do Amazon CloudWatch.

### Analisador de registros `DirectorySource`, `SysLog`


O seguinte arquivo faz streaming de registros de log de formato syslog de todos os arquivos com um`.log`na extensão`C:\LogSource\`para o`SyslogKinesisDataStream`Kinesis Data Streams fazem streaming na região us-east-1. Um marcador é estabelecido para garantir que todos os dados dos arquivos de log sejam enviados, mesmo que o agente seja desligado e reiniciado posteriormente. Um aplicativo personalizado pode ler e processar os registros do stream `SyslogKinesisDataStream`.

```
{
  "Sources": [
    {
      "Id": "SyslogDirectorySource",
      "SourceType": "DirectorySource",
      "Directory": "C:\\LogSource\\",
      "FileNameFilter": "*.log",
      "RecordParser": "SysLog",
      "TimeZoneKind": "UTC",
      "InitialPosition": "Bookmark"
    }
  ],
  "Sinks": [
    {
      "Id": "KinesisStreamSink",
      "SinkType": "KinesisStream",
      "StreamName": "SyslogKinesisDataStream",
      "Region": "us-east-1"
    }
  ],
  "Pipes": [
    {
      "Id": "SyslogDS2KSSink",
      "SourceRef": "SyslogDirectorySource",
      "SinkRef": "KinesisStreamSink"
    }
  ]
}
```

### Analisador de registros `DirectorySource`, `SingleLineJson`


O seguinte arquivo faz streaming de registros de log de formato JSON de todos os arquivos com um`.log`na extensão`C:\LogSource\`para o`JsonKinesisDataStream`Kinesis Data Streams fazem streaming na região us-east-1. Antes do streaming, pares de chave-valor para as chaves `DT` e `ComputerName` são adicionados a cada objeto JSON, com valores para o nome do computador e a data e a hora em que o registro é processado. Um aplicativo personalizado pode ler e processar os registros do stream `JsonKinesisDataStream`. 

```
{
  "Sources": [
    {
      "Id": "JsonLogSource",
      "SourceType": "DirectorySource",
      "RecordParser": "SingleLineJson",
      "Directory": "C:\\LogSource\\",
      "FileNameFilter": "*.log",
      "InitialPosition": 0
    }
  ],
  "Sinks": [
    {
      "Id": "KinesisStreamSink",
      "SinkType": "KinesisStream",
      "StreamName": "JsonKinesisDataStream",
      "Region": "us-east-1",
      "Format": "json",
      "ObjectDecoration": "ComputerName={ComputerName};DT={timestamp:yyyy-MM-dd HH:mm:ss}"
    }
  ],
  "Pipes": [
    {
      "Id": "JsonLogSourceToKinesisStreamSink",
      "SourceRef": "JsonLogSource",
      "SinkRef": "KinesisStreamSink"
    }
  ]
}
```

### `ExchangeLogSource`


O seguinte arquivo faz streaming de registros de log gerados pelo Microsoft Exchange e armazenados em arquivos com o`.log`na extensão`C:\temp\ExchangeLog\`para o`ExchangeKinesisDataStream`Stream de dados do Kinesis na região us-east-1 no formato JSON. Embora os logs do Exchange não estejam no formato JSON, o Kinesis Agent para Windows pode analisar os logs e transformá-los em JSON. Antes do streaming, pares de chave-valor para as chaves `DT` e `ComputerName` são adicionados a cada objeto JSON que contém valores para o nome do computador e a data e a hora em que o registro é processado. Um aplicativo personalizado pode ler e processar os registros do stream `ExchangeKinesisDataStream`. 

```
{
  "Sources": [
    {
       "Id": "ExchangeSource",
       "SourceType": "ExchangeLogSource",
       "Directory": "C:\\temp\\ExchangeLog\",
       "FileNameFilter": "*.log"
    }
  ],
  "Sinks": [
    {
      "Id": "KinesisStreamSink",
      "SinkType": "KinesisStream",
      "StreamName": "ExchangeKinesisDataStream",
      "Region": "us-east-1",
      "Format": "json",
      "ObjectDecoration": "ComputerName={ComputerName};DT={timestamp:yyyy-MM-dd HH:mm:ss}"
    }
  ],
  "Pipes": [
    {
      "Id": "ExchangeSourceToKinesisStreamSink",
      "SourceRef": "ExchangeSource",
      "SinkRef": "KinesisStreamSink"
    }
  ]
}
```

### `W3SVCLogSource`


O seguinte arquivo faz streaming de serviços de informações da Internet (IIS) para registros de log do Windows armazenados no local padrão para esses arquivos para o`IISKinesisDataStream`Kinesis Data Streams fazem streaming na região us-east-1. Um aplicativo personalizado pode ler e processar os registros do stream `IISKinesisDataStream`. IIS é um servidor web para Windows. 

```
{
  "Sources": [
    {
       "Id": "IISLogSource",
       "SourceType": "W3SVCLogSource",
       "Directory": "C:\\inetpub\\logs\\LogFiles\\W3SVC1",
       "FileNameFilter": "*.log"
    }
  ],
  "Sinks": [
    {
      "Id": "KinesisStreamSink",
      "SinkType": "KinesisStream",
      "StreamName": "IISKinesisDataStream",
      "Region": "us-east-1"
    }
  ],
  "Pipes": [
    {
      "Id": "IISLogSourceToKinesisStreamSink",
      "SourceRef": "IISLogSource",
      "SinkRef": "KinesisStreamSink"
    }
  ]
}
```

### `WindowsEventLogSource` com consulta


Os seguintes fluxos de arquivo de log eventos do log de eventos do sistema do Windows que têm um nível de`Critical`ou`Error`(menores ou iguais a 2) para o`SystemKinesisDataStream`Stream de dados do Kinesis na região us-east-1 no formato JSON. Um aplicativo personalizado pode ler e processar os registros do stream `SystemKinesisDataStream`. 

```
{
  "Sources": [
    {
         "Id": "SystemLogSource",
         "SourceType": "WindowsEventLogSource",
         "LogName": "System",
         "Query": "*[System/Level<=2]"
    }
  ],
  "Sinks": [
    {
      "Id": "KinesisStreamSink",
      "SinkType": "KinesisStream",
      "StreamName": "SystemKinesisDataStream",
      "Region": "us-east-1",
      "Format": "json"
    }
  ],
  "Pipes": [
    {
      "Id": "SLSourceToKSSink",
      "SourceRef": "SystemLogSource",
      "SinkRef": "KinesisStreamSink"
    }
  ]
}
```

### `WindowsETWEventSource`


O seguinte arquivo faz streaming de eventos de segurança e exceção do Microsoft Common Language Runtime (CLR) para o`ClrKinesisDataStream`Stream de dados do Kinesis na região us-east-1 no formato JSON. Um aplicativo personalizado pode ler e processar os registros do stream `ClrKinesisDataStream`. 

```
{
  "Sources": [
    {
       "Id": "ClrETWEventSource",
       "SourceType": "WindowsETWEventSource",
       "ProviderName": "Microsoft-Windows-DotNETRuntime",
       "TraceLevel": "Verbose",
       "MatchAnyKeyword": "0x00008000, 0x00000400"
    }
  ],
  "Sinks": [
    {
      "Id": "KinesisStreamSink",
      "SinkType": "KinesisStream",
      "StreamName": "ClrKinesisDataStream",
      "Region": "us-east-1",
      "Format": "json"
    }
  ],
  "Pipes": [
    {
      "Id": "ETWSourceToKSSink",
      "SourceRef": "ClrETWEventSource",
      "SinkRef": "KinesisStreamSink"
    }
  ]
}
```

### `WindowsPerformanceCounterSource`


O seguinte arquivo faz streaming de contadores de desempenho para o total de arquivos abertos, total de tentativas de login desde a reinicialização, o número de leituras de disco por segundo e a porcentagem de espaço livre em disco para as métricas do CloudWatch na região us-east-1. Você pode representar essas métricas no CloudWatch, criar painéis a partir dos gráficos e definir alarmes que enviam notificações quando os limites são excedidos. 

```
{
  "Sources": [
    {
      "Id": "PerformanceCounter",
      "SourceType": "WindowsPerformanceCounterSource",
      "Categories": [
        {
          "Category": "Server",
          "Counters": [
            "Files Open",
            "Logon Total"
          ]
        },
        {
          "Category": "LogicalDisk",
          "Instances": "*",
          "Counters": [
            "% Free Space",
            {
              "Counter": "Disk Reads/sec",
              "Unit": "Count/Second"
            }
          ]
        }
      ],
    }
  ],
  "Sinks": [
    {
      "Namespace": "MyServiceMetrics",
      "Region": "us-east-1",
      "Id": "CloudWatchSink",
      "SinkType": "CloudWatch"
    }
  ],
  "Pipes": [
    {
      "Id": "PerformanceCounterToCloudWatch",
      "SourceRef": "PerformanceCounter",
      "SinkRef": "CloudWatchSink"
    }
  ]
}
```

## Streaming do log de eventos de aplicativos do Windows para coletores


O exemplo a seguir`appsettings.json`Demonstram o streaming de logs de eventos de aplicativos do Windows para vários coletores no Amazon Kinesis Agent para Microsoft Windows. Para obter exemplos de como usar os tipos de coletores `KinesisStream` e `CloudWatch`, consulte [Streaming de várias origens para o Kinesis Data Streams](#configuring-kaw-examples-sources).

### `KinesisFirehose`


Os seguintes fluxos de arquivos`Critical`ou`Error`Eventos de log de aplicativos do Windows para o`WindowsLogFirehoseDeliveryStream`Stream de entrega do Kinesis Data Firehose na região us-east-1. Se a conectividade com o Kinesis Data Firehose for interrompida, os eventos serão primeiro colocados em fila na memória. Se necessário, eles serão colocados em fila em um arquivo no disco até que a conectividade seja restaurada. Os eventos serão retirados da fila e enviados apos novos eventos.

Você pode configurar o Kinesis Data Firehose para armazenar dados em streaming para vários tipos diferentes de serviços de armazenamento e análise baseados em requisitos de pipeline de dados. 

```
{
  "Sources": [
    {
         "Id": "ApplicationLogSource",
         "SourceType": "WindowsEventLogSource",
         "LogName": "Application",
         "Query": "*[System/Level<=2]"
    }
  ],
  "Sinks": [
    {
       "Id": "WindowsLogKinesisFirehoseSink",
       "SinkType": "KinesisFirehose",
       "StreamName": "WindowsLogFirehoseDeliveryStream",
       "Region": "us-east-1",
       "QueueType": "file"
    }  
    ],
  "Pipes": [
    {
      "Id": "ALSource2ALKFSink",
      "SourceRef": "ApplicationLogSource",
      "SinkRef": "WindowsLogKinesisFirehoseSink"
    }
  ]
}
```

### `CloudWatchLogs`


Os seguintes fluxos de arquivos`Critical`ou`Error`Eventos de logs de aplicativos do Windows para o CloudWatch Logs faz streaming de logs do no`MyServiceApplicationLog-Group`. O nome de cada stream começa com `Stream-`. Ele termina com o ano de quatro dígitos, o mês de dois dígitos e o dia de dois dígitos em que o stream foi criado, todos concatenados (por exemplo, `Stream-20180501` é o stream criado em 1º de maio de 2018). 

```
{
  "Sources": [
    {
         "Id": "ApplicationLogSource",
         "SourceType": "WindowsEventLogSource",
         "LogName": "Application",
         "Query": "*[System/Level<=2]"
    }
  ],
  "Sinks": [
    {
      "Id": "CloudWatchLogsSink",
      "SinkType": "CloudWatchLogs",
      "LogGroup": "MyServiceApplicationLog-Group",
      "LogStream": "Stream-{timestamp:yyyyMMdd}",
      "Region": "us-east-1",
      "Format": "json"
    }
  ],
  "Pipes": [
    {
      "Id": "ALSource2CWLSink",
      "SourceRef": "ApplicationLogSource",
      "SinkRef": "CloudWatchLogsSink"
    }
  ]
}
```

## Uso de pipes


O exemplo de arquivo de configuração `appsettings.json` a seguir demonstra o uso de recursos relacionados ao pipe.

 Este exemplo faz streaming de entradas de log do`c:\LogSource\`para o`ApplicationLogFirehoseDeliveryStream`Streaming de entrega do Kinesis Data Firehose. Ele inclui apenas as linhas que correspondem à expressão regular especificada pelo par de chave-valor `FilterPattern`. Especificamente, somente as linhas do arquivo de log que começam com o`10`ou`11`são transmitidos para o Kinesis Data Firehose. 

```
{
  "Sources": [
    {
      "Id": "ApplicationLogSource",
      "SourceType": "DirectorySource",
      "Directory": "C:\\LogSource\\",
      "FileNameFilter": "*.log",
      "RecordParser": "SingleLine"
    }
  ],
  "Sinks": [
    {
       "Id": "ApplicationLogKinesisFirehoseSink",
       "SinkType": "KinesisFirehose",
       "StreamName": "ApplicationLogFirehoseDeliveryStream",
       "Region": "us-east-1"
    }  
    ],
  "Pipes": [
    {
      "Id": "ALSourceToALKFSink",
      "Type": "RegexFilterPipe",
      "SourceRef": "ApplicationLogSource",
      "SinkRef": "ApplicationLogKinesisFirehoseSink",
      "FilterPattern": "^(10|11),.*"
    }
  ]
}
```

## Uso de várias origens e pipes


O exemplo de arquivo de configuração `appsettings.json` a seguir demonstra o uso de várias origens e pipes.

Este exemplo faz streaming do aplicativo, da segurança e do sistema do Windows Event Logs para o`EventLogStream`Stream de entrega do Kinesis Data Firehose usando três origens, três pipes e um único coletor.

```
{
    "Sources": [
		{
		  "Id": "ApplicationLog",
		  "SourceType": "WindowsEventLogSource",
		  "LogName": "Application"
		},
		{
		  "Id": "SecurityLog",
		  "SourceType": "WindowsEventLogSource",
		  "LogName": "Security"
		},
		{
		  "Id": "SystemLog",
		  "SourceType": "WindowsEventLogSource",
		  "LogName": "System"
		}
    ],
    "Sinks": [
		{
		  "Id": "EventLogSink",
		  "SinkType": "KinesisFirehose",
		  "StreamName": "EventLogStream",
		  "Format": "json"
		},
    ],
    "Pipes": [
		{
		  "Id": "ApplicationLogToFirehose",
		  "SourceRef": "ApplicationLog",
		  "SinkRef": "EventLogSink"
		},
		{
		  "Id": "SecurityLogToFirehose",
		  "SourceRef": "SecurityLog",
		  "SinkRef": "EventLogSink"
		},
		{
		  "Id": "SystemLogToFirehose",
		  "SourceRef": "SystemLog",
		  "SinkRef": "EventLogSink"
		}
    ]
}
```