Exemplos de configuração do Kinesis Agent para Windows - Agente do Amazon Kinesis do Microsoft Windows

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

Oappsettings.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, Declarações de coletor e Declarações de pipe.

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

Streaming de várias origens para o Kinesis Data Streams

O exemplo a seguirappsettings.jsonDemonstram 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.logna extensãoC:\LogSource\para oSyslogKinesisDataStreamKinesis 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.logna extensãoC:\LogSource\para oJsonKinesisDataStreamKinesis 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.logna extensãoC:\temp\ExchangeLog\para oExchangeKinesisDataStreamStream 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 oIISKinesisDataStreamKinesis 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 deCriticalouError(menores ou iguais a 2) para oSystemKinesisDataStreamStream 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 oClrKinesisDataStreamStream 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 seguirappsettings.jsonDemonstram 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.

KinesisFirehose

Os seguintes fluxos de arquivosCriticalouErrorEventos de log de aplicativos do Windows para oWindowsLogFirehoseDeliveryStreamStream 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 arquivosCriticalouErrorEventos de logs de aplicativos do Windows para o CloudWatch Logs faz streaming de logs do noMyServiceApplicationLog-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 doc:\LogSource\para oApplicationLogFirehoseDeliveryStreamStreaming 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 o10ou11sã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 oEventLogStreamStream 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" } ] }