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á.
Declarações de origem
No Amazon Kinesis Agent para Microsoft Windows,Declarações de origemDescrever onde e o que os dados de log, eventos e métricas devem ser coletados. Elas também podem especificar informações para analisar esses dados para que possas ser transformados. As seções a seguir descrevem as configurações para os tipos de origem integrados que estão disponíveis no Kinesis Agent para Windows. Como o Kinesis Agent para Windows é extensível, você pode adicionar tipos de origem personalizados. Cada tipo de origem geralmente requer pares de chave-valor específicos nos objetos de configuração que são relevantes para esse tipo de origem.
Todas as declarações de origem devem conter pelo menos os seguintes pares de chave-valor:
Id
-
Uma string exclusiva que identifica um objeto de origem específico no arquivo de configuração.
SourceType
-
O nome do tipo de origem para esse objeto de origem. O tipo de origem especifica a origem dos dados de log, eventos ou métricas que estão sendo coletados por esse objeto de origem. Ele também controla quais outros aspectos da origem podem ser declarados.
Para obter exemplos de arquivos de configuração completos que usam tipos diferentes de declarações de origem, consulte Streaming de várias origens para o Kinesis Data Streams.
Tópicos
- Configuração de DirectorySource
- Configuração de ExchangeLogSource
- Configuração de W3SVCLogSource
- Configuração de UlsSource
- Configuração de WindowsEventLogSource
- Configuração WindowsEventLogPollingSource
- Configuração de WindowsETWEventSource
- Configuração de WindowsPerformanceCounterSource
- Origem de métricas incorporadas do Kinesis Agent para Windows
- Lista de métricas do agente Kinesis para Windows
- Configuração de marcador
Configuração de DirectorySource
Overview
O tipo de origem DirectorySource
reúne logs de arquivos armazenados no diretório especificado. Como os arquivos de log são fornecidos em vários formatos diferentes, a declaração DirectorySource
permite que você especifique o formato dos dados no arquivo de log. Depois você pode transformar o conteúdo do log em um formato padrão, como JSON ou XML, antes do streaming para vários serviços da AWS.
Veja a seguir um exemplo de declaração DirectorySource
:
{ "Id": "myLog", "SourceType": "DirectorySource", "Directory": "C:\\Program Data\\MyCompany\\MyService\\logs", "FileNameFilter": "*.log", "IncludeSubdirectories": true, "IncludeDirectoryFilter": "cpu\\cpu-1;cpu\\cpu-2;load;memory", "RecordParser": "Timestamp", "TimestampFormat": "yyyy-MM-dd HH:mm:ss.ffff", "Pattern": "\\d{4}-\\d{2}-\\d(2}", "ExtractionPattern": "", "TimeZoneKind": "UTC", "SkipLines": 0, "Encoding": "utf-16", "ExtractionRegexOptions": "Multiline" }
Todas as declarações DirectorySource
podem fornecer os seguintes pares de chave/valor:
SourceType
-
Deve ser a string literal
"DirectorySource"
(obrigatória). Directory
-
O caminho para o diretório que contém os arquivos de log (obrigatório).
FileNameFilter
-
Opcionalmente, limita o conjunto de arquivos no diretório em que os dados de log são coletados com base em um padrão de nomenclatura de arquivos curinga. Se você tiver vários padrões de nome de arquivo de log, esse recurso permite que você use um único
DirectorySource
, conforme mostrado no exemplo a seguir.FileNameFilter: "*.log|*.txt"
Às vezes, os administradores de sistema compactam arquivos de log antes de arquivá-los. Se você especificar
"*.*"
emFileNameFilter
, os arquivos compactados conhecidos agora são excluídos. Este recurso impede.zip
,.gz
, e.bz2
sejam transmitidos acidentalmente. Se esse par de chave/valor não for especificado, os dados de todos os arquivos no diretório serão coletados por padrão. IncludeSubdirectories
Especifica monitorar subdiretórios para profundidade arbitrária limitada pelo sistema operacional. Esse recurso é útil para monitorar servidores da Web com vários sites. Você também pode usar o
IncludeDirectoryFilter
para monitorar apenas determinados subdiretórios especificados no filtro.RecordParser
-
Especifica como o tipo de origem
DirectorySource
deve analisar os arquivos de log que são encontrados no diretório especificado. Esse par de chave-valor é obrigatório, e os valores válidos são os seguintes:-
SingleLine
— cada linha do arquivo de log é um registro de log. -
SingleLineJson
— cada linha do arquivo de log é um registro de log formatado JSON. Esse analisador é útil quando você deseja adicionar outros pares de chave-valor ao objeto JSON usando decoração de objeto. Para obter mais informações, consulte Configuração de decorações de coletor. Para obter um exemplo que usa o analisador de registrosSingleLineJson
, consulte Tutorial: Transmitir arquivos de log JSON para o Amazon S3 usando o Kinesis Agent para Windows. -
Timestamp
— uma ou mais linhas podem incluir um registro de log. O registro de log começa com um timestamp. Essa opção exige a especificação do par de chave-valorTimestampFormat
. -
Regex
— cada registro começa com o texto que corresponde a uma expressão regular específica. Essa opção exige a especificação do par de chave-valorPattern
. -
SysLog
— Indica que o arquivo de log foi gravado nosyslogformato padrão. O arquivo de log é analisado em registros de acordo com essa especificação. -
Delimited
— uma versão mais simples do analisador de registros Regex em que os itens de dados nos registros do log são separados por um delimitador consistente. Essa opção é mais fácil de usar e é executada com mais rapidez do que o analisador Regex, e é a opção preferencial quando está disponível. Ao usar essa opção, você deve especificar o par de chave-valorDelimiter
.
-
TimestampField
-
Especifica qual campo JSON contém o timestamp para o registro. É usado somente com o
SingleLineJson
RecordParser
. Esse par de chave/valor é opcional. Se não for especificado, o Kinesis Agent para Windows usará a hora em que o registro foi lido para o timestamp. Uma vantagem de especificar o par de chave-valor é que as estatísticas de latência geradas pelo Kinesis Agent para Windows são mais precisas. TimestampFormat
-
Especifica como analisar a data e a hora associadas ao registro. O valor é a string
epoch
ou uma string de formato de data/hora .NET. Se o valor forepoch
, o tempo será analisado com base no horário UNIX Epoch. Para obter mais informações sobre o horário UNIX Epoch, consulte Horário Unix. Para obter mais informações sobre strings de formato de data/hora do .NET, consulte Strings de formato de data e hora personalizadas na documentação do Microsoft .NET. Esse par de chave-valor será obrigatório somente se o analisador de registros Timestamp
for especificado, ou o analisador de registrosSingleLineJson
for especificado junto com o par de chave-valorTimestampField
. Pattern
-
Especifica uma expressão regular que deve corresponder à primeira linha de um registro possivelmente de várias linhas. Esse par de chave-valor só é obrigatório para o analisador de registros
Regex
. ExtractionPattern
-
Especifica uma expressão regular que deve usar grupos nomeados. O registro é analisado usando essa expressão regular e os grupos nomeados formam os campos do registro analisado. Esses campos são usados como base para criar objetos JSON ou XML ou documentos dos quais é feito streaming pelos coletores para vários serviços da AWS. Esse par de chave/valor é opcional e está disponível com o
Regex
e o analisador de carimbo de data/hora.O nome do grupo
Timestamp
é especialmente processado, uma vez que ele indica para o analisadorRegex
qual campo contém a data e a hora para cada registro em cada arquivo de log. Delimiter
-
Especifica o caractere ou a string que separa cada item em cada registro de log. Esse par de chave-valor deve e só pode ser usado com o analisador de registros
Delimited
. Use a sequência de dois caracteres\t
para representar o caractere de tabulação. HeaderPattern
-
Especifica uma expressão regular para corresponder à linha do arquivo de log que contém o conjunto de cabeçalhos para o registro. Se o arquivo de log não contiver informações de cabeçalho, use o par de chave-valor
Headers
para especificar os cabeçalhos implícitos. O par de chave-valorHeaderPattern
é opcional e só é válido para o analisador de registrosDelimited
.nota
Uma entrada de cabeçalho vazia (de comprimento 0) para uma coluna faz com que os dados dessa coluna sejam filtrados da saída final da saída analisada
DirectorySource
. Headers
-
Especifica os nomes das colunas de dados analisados usando o delimitador especificado. Esse par de chave/valor é opcional e só é válido para o analisador de registros
Delimited
.nota
Uma entrada de cabeçalho vazia (de comprimento 0) para uma coluna faz com que os dados dessa coluna sejam filtrados da saída final da saída analisada
DirectorySource
. RecordPattern
-
Especifica uma expressão regular que identifica as linhas do arquivo de log que contêm dados de registro. Diferente da linha de cabeçalho opcional identificada por
HeaderPattern
, as linhas que não correspondem aoRecordPattern
especificado são ignoradas durante o processamento de registros. Esse par de chave/valor é opcional e só é válido para o analisador de registrosDelimited
. Se não for fornecido, o padrão é considerar qualquer linha que não corresponda aoHeaderPattern
opcional ou aoCommentPattern
opcional uma linha que contém dados de registro que podem ser analisados. CommentPattern
-
Especifica uma expressão regular que identifica linhas no arquivo de log que devem ser excluídas antes de analisar os dados no arquivo de log. Esse par de chave/valor é opcional e só é válido para o analisador de registros
Delimited
. Se não for fornecido, o padrão é considerar qualquer linha que não corresponda aoHeaderPattern
uma linha que contém dados de registro que podem ser analisados, a menos queRecordPattern
seja especificado. TimeZoneKind
-
Especifica se o timestamp no arquivo de log deve ser considerado no fuso horário local ou UTC. Isso é opcional e usa como padrão UTC. Os únicos valores válidos para esse par de chave-valor são
Local
ouUTC
. O timestamp nunca é alterado seTimeZoneKind
não for especificado ou se o valor for UTC. O carimbo de data/hora é convertido para UTC quando a propriedadeTimeZoneKind
O valor éLocal
E o coletor que recebe o timestamp é o CloudWatch Logs ou o registro analisado é enviado a outros coletores. As datas e horas que são incorporadas em mensagens não são convertidas. SkipLines
-
Quando especificado, controla o número de linhas ignoradas no início de cada arquivo de log antes da análise do registro. Isso é opcional e o valor padrão é 0.
- Codificação
Por padrão, o Kinesis Agent para Windows pode detectar automaticamente a codificação do bytemark. No entanto, a codificação automática pode não funcionar corretamente em alguns formatos unicode mais antigos. O exemplo a seguir especifica a codificação necessária para transmitir um log do Microsoft SQL Server.
"Encoding": "utf-16"
Para obter uma lista de nomes de codificação, consulteLista de codificações
na documentação do Microsoft .NET. - ExtractionRegexOptions
Você pode usar
ExtractionRegexOptions
Para simplificar expressões regulares. Esse par de chave/valor é opcional. O padrão é"None"
.O exemplo a seguir especifica que o
"."
corresponde a qualquer caractere, incluindo\r\n
."ExtractionRegexOptions" = "
Multiline
"Para obter uma lista dos possíveis campos para ExtractionRegexOptions, consulte a propriedadeRegExOptions Enum
na documentação do Microsoft .NET.
Analisador de registros Regex
Você pode analisar logs de texto não estruturado usando o analisador de registros Regex
junto com os pares de chave-valor TimestampFormat
, Pattern
e ExtractionPattern
. Por exemplo, digamos que seu arquivo de log tenha a seguinte aparência:
[FATAL][2017/05/03 21:31:00.534][0x00003ca8][0000059c][][ActivationSubSystem][GetActivationForSystemID][0] 'ActivationException.File: EQCASLicensingSubSystem.cpp' [FATAL][2017/05/03 21:31:00.535][0x00003ca8][0000059c][][ActivationSubSystem][GetActivationForSystemID][0] 'ActivationException.Line: 3999'
Você pode especificar a expressão regular a seguir para o par de chave-valor Pattern
para ajudar a dividir o arquivo de log em registros de log individuais:
^\[\w+\]\[(?<TimeStamp>\d{4}/\d{2}/\d{2} \d{2}:\d{2}:\d{2}\.\d{3})\]
Essa expressão regular corresponde à seguinte sequência:
-
O início da string que está sendo avaliada.
-
Um ou mais caracteres de palavras entre colchetes.
-
Um timestamp entre colchetes. O timestamp corresponde à seguinte sequência:
-
Um ano com quatro dígitos
-
Uma barra
-
Um mês com dois dígitos
-
Uma barra
-
Um dia com dois dígitos
-
Um caractere de espaço
-
Uma hora com dois dígitos
-
Dois pontos
-
Minuto com dois dígitos
-
Dois pontos
-
Segundo com dois dígitos
-
Um ponto
-
Milissegundo com três dígitos
-
Você pode especificar o seguinte formato para o par de chave-valor TimestampFormat
para converter o timestamp textual em uma data e hora:
yyyy/MM/dd HH:mm:ss.fff
Você pode usar a seguinte expressão regular para extrair os campos do registro de log por meio do par de chave-valor ExtractionPattern
.
^\[(?<Severity>\w+)\]\[(?<TimeStamp>\d{4}/\d{2}/\d{2} \d{2}:\d{2}:\d{2}\.\d{3})\]\[[^]]*\]\[[^]]*\]\[[^]]*\]\[(?<SubSystem>\w+)\]\[(?<Module>\w+)\]\[[^]]*\] '(?<Message>.*)'$
Essa expressão regular corresponde aos seguintes grupos em sequência:
-
Severity
— um ou mais caracteres de palavras entre colchetes. -
TimeStamp
— consulte a descrição anterior para o timestamp. -
Três sequências entre colchetes de zeros ou mais caracteres são ignoradas.
-
SubSystem
— um ou mais caracteres de palavras entre colchetes. -
Module
— um ou mais caracteres de palavras entre colchetes. -
Uma sequência entre colchetes de zeros ou mais caracteres é ignorada.
-
Um espaço sem nome é ignorado.
-
Message
— Zero ou mais caracteres entre aspas simples.
A seguinte declaração de origem combina essas expressões regulares e o formato de data e hora para fornecer as instruções completas para o Kinesis Agent para Windows para analisar esse tipo de arquivo de log.
{ "Id": "PrintLog", "SourceType": "DirectorySource", "Directory": "C:\\temp\\PrintLogTest", "FileNameFilter": "*.log", "RecordParser": "Regex", "TimestampFormat": "yyyy/MM/dd HH:mm:ss.fff", "Pattern": "^\\[\\w+\\]\\[(?<TimeStamp>\\d{4}/\\d{2}/\\d{2} \\d{2}:\\d{2}:\\d{2}\\.\\d{3})\\]", "ExtractionPattern": "^\\[(?<Severity>\\w+)\\]\\[(?<TimeStamp>\\d{4}/\\d{2}/\\d{2} \\d{2}:\\d{2}:\\d{2}\\.\\d{3})\\]\\[[^]]*\\]\\[[^]]*\\]\\[[^]]*\\]\\[(?<SubSystem>\\w+)\\]\\[(?<Module>\\w+)\\]\\[[^]]*\\] '(?<Message>.*)'$", "TimeZoneKind": "UTC" }
nota
As barras invertidas nos arquivos em formato JSON devem ser precedidas por uma barra invertida adicional como caractere de escape.
Para obter mais informações sobre expressões regulares, consulte Linguagem de expressões regulares – referência rápida
Analisador de registros Delimited
Você pode usar o analisador de registros Delimited
para analisar arquivos de log e dados semiestruturados nos quais há uma sequência de caracteres consistente separando cada coluna de dados em cada linha. Por exemplo, arquivos CSV usam uma vírgula para separar cada coluna de dados, e arquivos TSV usam uma guia.
Suponha que você queira analisar um arquivo de log no formato de banco de dados NPS
"NPS-MASTER","IAS",03/22/2018,23:07:55,1,"user1","Domain1\user1",,,,,,,,0,"192.168.86.137","Nate - Test 1",,,,,,,1,,0,"311 1 192.168.0.213 03/15/2018 08:14:29 1",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"Use Windows authentication for all users",1,,,, "NPS-MASTER","IAS",03/22/2018,23:07:55,3,,"Domain1\user1",,,,,,,,0,"192.168.86.137","Nate - Test 1",,,,,,,1,,16,"311 1 192.168.0.213 03/15/2018 08:14:29 1",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"Use Windows authentication for all users",1,,,,
O exemplo de arquivo de configuração appsettings.json
a seguir inclui uma declaração DirectorySource
que usa o analisador de registros Delimited
para analisar esse texto em uma representação de objeto. Depois ele faz streaming de dados com formato JSON para o Kinesis Data Firehose:
{ "Sources": [ { "Id": "NPS", "SourceType": "DirectorySource", "Directory": "C:\\temp\\NPS", "FileNameFilter": "*.log", "RecordParser": "Delimited", "Delimiter": ",", "Headers": "ComputerName,ServiceName,Record-Date,Record-Time,Packet-Type,User-Name,Fully-Qualified-Distinguished-Name,Called-Station-ID,Calling-Station-ID,Callback-Number,Framed-IP-Address,NAS-Identifier,NAS-IP-Address,NAS-Port,Client-Vendor,Client-IP-Address,Client-Friendly-Name,Event-Timestamp,Port-Limit,NAS-Port-Type,Connect-Info,Framed-Protocol,Service-Type,Authentication-Type,Policy-Name,Reason-Code,Class,Session-Timeout,Idle-Timeout,Termination-Action,EAP-Friendly-Name,Acct-Status-Type,Acct-Delay-Time,Acct-Input-Octets,Acct-Output-Octets,Acct-Session-Id,Acct-Authentic,Acct-Session-Time,Acct-Input-Packets,Acct-Output-Packets,Acct-Terminate-Cause,Acct-Multi-Ssn-ID,Acct-Link-Count,Acct-Interim-Interval,Tunnel-Type,Tunnel-Medium-Type,Tunnel-Client-Endpt,Tunnel-Server-Endpt,Acct-Tunnel-Conn,Tunnel-Pvt-Group-ID,Tunnel-Assignment-ID,Tunnel-Preference,MS-Acct-Auth-Type,MS-Acct-EAP-Type,MS-RAS-Version,MS-RAS-Vendor,MS-CHAP-Error,MS-CHAP-Domain,MS-MPPE-Encryption-Types,MS-MPPE-Encryption-Policy,Proxy-Policy-Name,Provider-Type,Provider-Name,Remote-Server-Address,MS-RAS-Client-Name,MS-RAS-Client-Version", "TimestampField": "{Record-Date} {Record-Time}", "TimestampFormat": "MM/dd/yyyy HH:mm:ss" } ], "Sinks": [ { "Id": "npslogtest", "SinkType": "KinesisFirehose", "Region": "us-west-2", "StreamName": "npslogtest", "Format": "json" } ], "Pipes": [ { "Id": "W3SVCLog1ToKinesisStream", "SourceRef": "NPS", "SinkRef": "npslogtest" } ] }
Dados com formato JSON dos quais foi feito streaming para o Kinesis Data Firehose se parecem com o seguinte:
{ "ComputerName": "NPS-MASTER", "ServiceName": "IAS", "Record-Date": "03/22/2018", "Record-Time": "23:07:55", "Packet-Type": "1", "User-Name": "user1", "Fully-Qualified-Distinguished-Name": "Domain1\\user1", "Called-Station-ID": "", "Calling-Station-ID": "", "Callback-Number": "", "Framed-IP-Address": "", "NAS-Identifier": "", "NAS-IP-Address": "", "NAS-Port": "", "Client-Vendor": "0", "Client-IP-Address": "192.168.86.137", "Client-Friendly-Name": "Nate - Test 1", "Event-Timestamp": "", "Port-Limit": "", "NAS-Port-Type": "", "Connect-Info": "", "Framed-Protocol": "", "Service-Type": "", "Authentication-Type": "1", "Policy-Name": "", "Reason-Code": "0", "Class": "311 1 192.168.0.213 03/15/2018 08:14:29 1", "Session-Timeout": "", "Idle-Timeout": "", "Termination-Action": "", "EAP-Friendly-Name": "", "Acct-Status-Type": "", "Acct-Delay-Time": "", "Acct-Input-Octets": "", "Acct-Output-Octets": "", "Acct-Session-Id": "", "Acct-Authentic": "", "Acct-Session-Time": "", "Acct-Input-Packets": "", "Acct-Output-Packets": "", "Acct-Terminate-Cause": "", "Acct-Multi-Ssn-ID": "", "Acct-Link-Count": "", "Acct-Interim-Interval": "", "Tunnel-Type": "", "Tunnel-Medium-Type": "", "Tunnel-Client-Endpt": "", "Tunnel-Server-Endpt": "", "Acct-Tunnel-Conn": "", "Tunnel-Pvt-Group-ID": "", "Tunnel-Assignment-ID": "", "Tunnel-Preference": "", "MS-Acct-Auth-Type": "", "MS-Acct-EAP-Type": "", "MS-RAS-Version": "", "MS-RAS-Vendor": "", "MS-CHAP-Error": "", "MS-CHAP-Domain": "", "MS-MPPE-Encryption-Types": "", "MS-MPPE-Encryption-Policy": "", "Proxy-Policy-Name": "Use Windows authentication for all users", "Provider-Type": "1", "Provider-Name": "", "Remote-Server-Address": "", "MS-RAS-Client-Name": "", "MS-RAS-Client-Version": "" }
Analisador de registros SysLog
Para o analisador de registros SysLog
, a saída analisada da origem inclui as seguintes informações:
Atributo | Tipo | Descrição |
---|---|---|
SysLogTimeStamp |
String | A data e a hora originais do arquivo de log com formato syslog. |
Hostname |
String | O nome do computador no qual reside o arquivo de log em formato syslog. |
Program |
String | O nome do aplicativo ou do serviço que gerou o arquivo de log. |
Message |
String | A mensagem de log gerada pelo aplicativo ou serviço. |
TimeStamp |
String | A data e hora analisadas no formato ISO 8601. |
Veja a seguir um exemplo de dados SysLog transformados em JSON:
{ "SysLogTimeStamp": "Jun 18 01:34:56", "Hostname": "myhost1.example.mydomain.com", "Program": "mymailservice:", "Message": "Info: ICID 123456789 close", "TimeStamp": "2017-06-18T01:34.56.000" }
Summary
Veja a seguir um resumo dos pares de chave/valor disponíveis para a origem DirectorySource
e dos RecordParser
s relacionados com esses pares de chave/valor.
Nome da chave | RecordParser | Observações |
---|---|---|
SourceType |
Obrigatório para todos | Deve ter o valor DirectorySource |
Directory |
Obrigatório para todos | |
FileNameFilter |
Opcional para todos | |
RecordParser |
Obrigatório para todos | |
TimestampField |
Opcional para SingleLineJson |
|
TimestampFormat |
Obrigatório para Timestamp e para SingleLineJson se TimestampField for especificado |
|
Pattern |
Obrigatório para Regex |
|
ExtractionPattern |
Opcional para Regex |
Obrigatório para Regex se o coletor especificar o formato json ou xml |
Delimiter |
Obrigatório para Delimited |
|
HeaderPattern |
Opcional para Delimited |
|
Headers |
Opcional para Delimited |
|
RecordPattern |
Opcional para Delimited |
|
CommentPattern |
Opcional para Delimited |
|
TimeZoneKind |
Opcional para Regex , Timestamp , SysLog e SingleLineJson quando um campo de timestamp é identificado |
|
SkipLines |
Opcional para todos |
Configuração de ExchangeLogSource
O tipo ExchangeLogSource
é usado para coletar logs do Microsoft Exchange. O Exchange produz logs em vários tipos diferentes de formatos de log. Esse tipo de origem analisa todos eles. Embora seja possível analisá-los usando o tipo DirectorySource
com o analisador de registros Regex
, é muito mais simples de usar o ExchangeLogSource
. Isso ocorre porque você não precisa projetar e fornecer expressões regulares para os formatos de arquivo de log. Veja a seguir um exemplo de declaração ExchangeLogSource
:
{ "Id": "MyExchangeLog", "SourceType": "ExchangeLogSource", "Directory": "C:\\temp\\ExchangeLogTest", "FileNameFilter": "*.log" }
Todas as declarações do Exchange podem fornecer os seguintes pares de chave/valor:
SourceType
-
Deve ser a string literal
"ExchangeLogSource"
(obrigatória). Directory
-
O caminho para o diretório que contém os arquivos de log (obrigatório).
FileNameFilter
-
Opcionalmente, limita o conjunto de arquivos no diretório em que os dados de log são coletados com base em um padrão de nomenclatura de arquivos curinga. Se esse par de chave/valor não for especificado, por padrão, os dados de log de todos os arquivos no diretório serão coletados.
TimestampField
-
O nome da coluna que contém a data e a hora para o registro. Esse par de chave-valor é opcional e não precisará ser especificado se o nome do campo for
date-time
ouDateTime
. Caso contrário, ele será obrigatório.
Configuração de W3SVCLogSource
O tipo W3SVCLogSource
é usado para coletar logs do Internet Information Services (IIS) para Windows.
Veja a seguir um exemplo de declaração W3SVCLogSource
:
{ "Id": "MyW3SVCLog", "SourceType": "W3SVCLogSource", "Directory": "C:\\inetpub\\logs\\LogFiles\\W3SVC1", "FileNameFilter": "*.log" }
Todas as declarações W3SVCLogSource
podem fornecer os seguintes pares de chave/valor:
SourceType
-
Deve ser a string literal
"W3SVCLogSource"
(obrigatória). Directory
-
O caminho para o diretório que contém os arquivos de log (obrigatório).
FileNameFilter
-
Opcionalmente, limita o conjunto de arquivos no diretório em que os dados de log são coletados com base em um padrão de nomenclatura de arquivos curinga. Se esse par de chave/valor não for especificado, por padrão, os dados de log de todos os arquivos no diretório serão coletados.
Configuração de UlsSource
O tipo UlsSource
é usado para coletar logs do Microsoft SharePoint. Veja a seguir um exemplo de declaração UlsSource
:
{ "Id": "UlsSource", "SourceType": "UlsSource", "Directory": "C:\\temp\\uls", "FileNameFilter": "*.log" }
Todas as declarações UlsSource
podem fornecer os seguintes pares de chave/valor:
SourceType
-
Deve ser a string literal
"UlsSource"
(obrigatória). Directory
-
O caminho para o diretório que contém os arquivos de log (obrigatório).
FileNameFilter
-
Opcionalmente, limita o conjunto de arquivos no diretório em que os dados de log são coletados com base em um padrão de nomenclatura de arquivos curinga. Se esse par de chave/valor não for especificado, por padrão, os dados de log de todos os arquivos no diretório serão coletados.
Configuração de WindowsEventLogSource
O tipo WindowsEventLogSource
é usado para coletar eventos do serviço de log de eventos do Windows. Veja a seguir um exemplo de declaração WindowsEventLogSource
:
{ "Id": "mySecurityLog", "SourceType": "WindowsEventLogSource", "LogName": "Security" }
Todas as declarações WindowsEventLogSource
podem fornecer os seguintes pares de chave/valor:
SourceType
-
Deve ser a string literal
"WindowsEventLogSource"
(obrigatória). LogName
-
Os eventos são coletados do log especificado. Os valores comuns incluem
Application
,Security
eSystem
, mas você pode especificar qualquer nome de log de eventos válido do Windows. Esse par de chave/valor é obrigatório. Query
-
Opcionalmente limita os eventos que são gerados do
WindowsEventLogSource
. Se esse par de chave/valor não for especificado, por padrão, todos os eventos serão gerados. Para obter informações sobre a sintaxe desse valor, verifique Consultas de eventos e Event XMLna documentação do Windows. Para obter informações sobre definições no nível de log, consulte Tipos de eventos na documentação do Windows. IncludeEventData
-
Opcionalmente, permite a coleta e o streaming de dados de eventos específicos do provedor associados a eventos do log de eventos especificado do Windows quando o valor desse par de chave/valor é
"true"
. Somente dados de eventos que podem ser serializados com êxito são incluídos. Esse par de chave-valor é opcional e, se não for especificado, os dados do evento específico do provedor não serão coletados.nota
Incluir dados de eventos pode aumentar significativamente a quantidade de dados dos quais é feito streaming da origem. O tamanho máximo de um evento pode ser 262.143 bytes com dados de eventos incluídos.
A saída analisada do WindowsEventLogSource
contém as seguintes informações:
Atributo | Tipo | Descrição |
---|---|---|
EventId |
Int | O identificador do tipo de evento. |
Description |
String | Texto que descreve os detalhes do evento. |
LevelDisplayName |
String | A categoria do evento (um de Erro, Aviso, Informação, Auditoria de êxito, Auditoria de falha). |
LogName |
String | Se o evento foi registrado (os valores típicos são Application , Security e System , mas há muitas possibilidades). |
MachineName |
String | Qual computador registrou o evento. |
ProviderName |
String | Qual aplicativo ou serviço registrou o evento. |
TimeCreated |
String | Quando o evento ocorreu no formato ISO 8601. |
Index |
Int | Onde a entrada está localizada no log. |
UserName |
String | Quem fez a entrada, se for conhecido. |
Keywords |
String | O tipo de evento. Os valores padrão incluem AuditFailure (eventos de auditoria de segurança com falha), AuditSuccess (eventos de auditoria de segurança bem-sucedida), Classic (eventos gerados com a função RaiseEvent ), Correlation Hint (eventos de transferência), SQM (eventos do Service Quality Mechanism), WDI Context (eventos do contexto da Windows Diagnostic Infrastructure) e WDI Diag (eventos de diagnóstico da Windows Diagnostic Infrastructure). |
EventData |
Lista de objetos | Dados extras opcionais específicos do provedor sobre o evento de log. Só serão incluídos se o valor para o par de chave/valor IncludeEventData for "true" . |
Veja a seguir um exemplo de evento transformado em JSON:
{[ "EventId": 7036, "Description": "The Amazon SSM Agent service entered the stopped state.", "LevelDisplayName": "Informational", "LogName": "System", "MachineName": "mymachine.mycompany.com", "ProviderName": "Service Control Manager", "TimeCreated": "2017-10-04T16:42:53.8921205Z", "Index": 462335, "UserName": null, "Keywords": "Classic", "EventData": [ "Amazon SSM Agent", "stopped", "rPctBAMZFhYubF8zVLcrBd3bTTcNzHvY5Jc2Br0aMrxxx==" ]}
Configuração WindowsEventLogPollingSource
WindowsEventLogPollingSource
usa um mecanismo baseado em sondagem para reunir todos os novos eventos do log de eventos que correspondem aos parâmetros configurados. O intervalo de sondagem é atualizado dinamicamente entre 100 ms e 5000 ms dependendo de quantos eventos foram coletados durante a última pesquisa. Veja a seguir um exemplo de declaração WindowsEventLogPollingSource
:
{ "Id": "MySecurityLog", "SourceType": "WindowsEventLogPollingSource", "LogName": "Security", "IncludeEventData": "true", "Query": "", "CustomFilters": "ExcludeOwnSecurityEvents" }
Todas as declarações WindowsEventLogPollingSource
podem fornecer os seguintes pares de chave/valor:
SourceType
-
Deve ser a string literal
"WindowsEventLogPollingSource"
(obrigatória). LogName
-
Especifica o log. As opções válidas são
Application
,Security
,System
ou outros logs válidos. IncludeEventData
-
Optional. Quando
true
, especifica que EventData extra quando transmitido como JSON e XML é incluído. O padrão éfalse
. Query
Optional. Os logs de eventos do Windows suportam consultas de eventos usando expressões XPath, que você pode especificar usando
Query
. Para obter mais informações, consulteConsultas de eventos e XML de eventosna documentação da Microsoft. CustomFilters
-
Optional. Lista de filtros separados por ponto e vírgula (
;
). Os seguintes filtros podem ser especificados.ExcludeOwnSecurityEvents
Exclui eventos de segurança gerados pelo Kinesis Agent para Windows propriamente dito.
Configuração de WindowsETWEventSource
O tipo WindowsETWEventSource
é usado para coletar rastreamentos de eventos de serviço e de aplicativos usando um recurso chamado Rastreamento de eventos para Windows (ETW). Para obter mais informações, consulte Rastreamento de eventos
Veja a seguir um exemplo de declaração WindowsETWEventSource
:
{ "Id": "ClrETWEventSource", "SourceType": "WindowsETWEventSource", "ProviderName": "Microsoft-Windows-DotNETRuntime", "TraceLevel": "Verbose", "MatchAnyKeyword": 32768 }
Todas as declarações WindowsETWEventSource
podem fornecer os seguintes pares de chave/valor:
SourceType
-
Deve ser a string literal
"WindowsETWEventSource"
(obrigatória). ProviderName
-
Especifica qual provedor de evento a ser usado para coletar eventos de rastreamento. Deve ser um nome de provedor ETW válido para um provedor instalado. Para determinar quais provedores estão instalados, execute o seguinte em uma janela de prompt de comando do Windows:
logman query providers
TraceLevel
-
Especifica quais categorias de eventos de rastreamento devem ser coletadas. Os valores permitidos são
Critical
,Error
,Warning
,Informational
eVerbose
. O significado exato depende do provedor ETW que está selecionado. MatchAnyKeyword
-
Esse valor é um número de 64 bits, em que cada bit representa uma palavra-chave individual. Cada palavra-chave descreve uma categoria de eventos a serem coletados. Para as palavras-chave com suporte e seus valores e como elas se relacionam com
TraceLevel
, consulte a documentação do provedor. Por exemplo, para obter informações sobre o provedor ETW CLR, consulte Palavras-chave de CLR ETW e níveisna documentação do Microsoft .NET Framework. No exemplo anterior, 32768 (0x00008000) representa a
ExceptionKeyword
para o provedor ETW CLR que instrui o provedor para coletar informações sobre as exceções lançadas. Embora o JSON não ofereça suporte nativamente a constantes hexadecimais, você pode especificá-las paraMatchAnyKeyword
colocando-as em uma string. Você também pode especificar várias constantes separadas por vírgulas. Por exemplo, use o seguinte para especificar aExceptionKeyword
e aSecurityKeyword
(0x00000400):{ "Id": "MyClrETWEventSource", "SourceType": "WindowsETWEventSource", "ProviderName": "Microsoft-Windows-DotNETRuntime", "TraceLevel": "Verbose", "MatchAnyKeyword": "0x00008000, 0x00000400" }
Para garantir que todas as palavras-chave especificadas sejam ativadas para um provedor, vários valores de palavra-chave são combinados usando OR e são transmitidos para esse provedor.
A saída de WindowsETWEventSource
contém as seguintes informações de cada evento:
Atributo | Tipo | Descrição |
---|---|---|
EventName |
String | Que tipo de evento ocorrido. |
ProviderName |
String | Qual provedor detectou o evento. |
FormattedMessage |
String | Um texto de resumo do evento. |
ProcessID |
Int | Qual processo relatou o evento. |
ExecutingThreadID |
Int | Qual thread dentro do processo relatou o evento. |
MachineName |
String | O nome do desktop ou do servidor que está relatando o evento. |
Payload |
Tabela de hash | Uma tabela com uma chave de string e qualquer tipo de objeto como um valor. A chave é o nome do item de carga, e o valor é o valor do item de carga. A carga depende do provedor. |
Veja a seguir um exemplo de evento transformado em JSON:
{ "EventName": "Exception/Start", "ProviderName": "Microsoft-Windows-DotNETRuntime", "FormattedMessage": "ExceptionType=System.Exception;\r\nExceptionMessage=Intentionally unhandled exception.;\r\nExceptionEIP=0x2ab0499;\r\nExceptionHRESULT=-2,146,233,088;\r\nExceptionFlags=CLSCompliant;\r\nClrInstanceID=9 ", "ProcessID": 3328, "ExecutingThreadID": 6172, "MachineName": "MyHost.MyCompany.com", "Payload": { "ExceptionType": "System.Exception", "ExceptionMessage": "Intentionally unhandled exception.", "ExceptionEIP": 44762265, "ExceptionHRESULT": -2146233088, "ExceptionFlags": 16, "ClrInstanceID": 9 } }
Configuração de WindowsPerformanceCounterSource
O tipo WindowsPerformanceCounterSource
coleta métricas do contador de desempenho do Windows. Veja a seguir um exemplo de declaração WindowsPerformanceCounterSource
:
{ "Id": "MyPerformanceCounter", "SourceType": "WindowsPerformanceCounterSource", "Categories": [{ "Category": "Server", "Counters": ["Files Open", "Logon Total", "Logon/sec", "Pool Nonpaged Bytes"] }, { "Category": "System", "Counters": ["Processes", "Processor Queue Length", "System Up Time"] }, { "Category": "LogicalDisk", "Instances": "*", "Counters": [ "% Free Space", "Avg. Disk Queue Length", { "Counter": "Disk Reads/sec", "Unit": "Count/Second" }, "Disk Writes/sec" ] }, { "Category": "Network Adapter", "Instances": "^Local Area Connection\* \d$", "Counters": ["Bytes Received/sec", "Bytes Sent/sec"] } ] }
Todas as declarações WindowsPerformanceCounterSource
podem fornecer os seguintes pares de chave/valor:
SourceType
-
Deve ser a string literal
"WindowsPerformanceCounterSource"
(obrigatória). Categories
-
Especifica um conjunto de grupos de métricas do contador de desempenho a serem reunidos do Windows. Cada grupo de métricas contém os seguintes pares de chave/valor:
Category
-
Especifica o conjunto de métricas do contador a serem coletadas (obrigatório).
Instances
-
Especifica o conjunto de objetos de interesse quando há um conjunto exclusivo de contadores de desempenho por objeto. Por exemplo, quando a categoria é
LogicalDisk
, há um conjunto de contadores de desempenho por unidade de disco. Esse par de chave/valor é opcional. Você pode usar os curingas*
e?
para fazer a correspondência com várias instâncias. Para valores agregados em todas as instâncias, especifique_Total
.Você também pode usar
InstanceRegex
, que aceita expressões regulares que contêm o*
caractere curinga como parte do nome da ocorrência. Counters
-
Especifica quais métricas a serem reunidas para a categoria especificada. Esse par de chave/valor é obrigatório. Você pode usar os curingas
*
e?
para fazer a correspondência com vários contadores. Você pode especificarCounters
usando apenas o nome e a unidade. Se as unidades não forem especificados, o Kinesis Agent para Windows tentará inferir as unidades a partir do nome. Se essas inferências estiverem incorretas, a unidade poderá ser especificada explicitamente. Se desejar, você poderá alterar os nomesCounter
. A representação mais complexa de um contador é um objeto com os seguintes pares de chave/valor:Counter
-
O nome do contador. Esse par de chave/valor é obrigatório.
Rename
-
O nome do contador a ser apresentado ao coletor. Esse par de chave/valor é opcional.
Unit
-
O significado do valor que está associado ao contador. Para obter uma lista completa de nomes de unidade válidos, consulte a documentação da unidade emMetricDatumnoReferência de API do Amazon CloudWatch.
Veja a seguir um exemplo de uma especificação complexa de um contador:
{ "Counter": "Disk Reads/sec, "Rename": "Disk Reads per second", "Unit": "Count/Second" }
WindowsPerformanceCounterSource
pode ser usado apenas com um pipe que especifique um coletor do Amazon CloudWatch. Use um coletor separado se também for feito streaming das métricas incorporadas do Kinesis Agent para Windows para o CloudWatch. Examine o log do Kinesis Agent para o Windows após a inicialização do serviço para determinar quais unidades foram inferidas para contadores quando as unidades não foram especificados noWindowsPerformanceCounterSource
Declarações. Use o PowerShell para determinar os nomes válidos para categorias, instâncias e contadores.
Para ver as informações sobre todas as categorias, incluindo contadores associados a conjuntos de contadores, execute este comando em uma janela do PowerShell:
Get-Counter -ListSet * | Sort-Object
Para determinar quais instâncias estão disponíveis para cada um dos contadores do conjunto, execute um comando semelhante ao exemplo a seguir em uma janela do PowerShell:
Get-Counter -Counter "\Process(*)\% Processor Time"
O valor do parâmetro Counter
deve ser um dos caminhos de um membro PathsWithInstances
listado pela invocação do comando Get-Counter -ListSet
anterior.
Origem de métricas incorporadas do Kinesis Agent para Windows
Além de fontes de métricas comuns, como oWindowsPerformanceCounterSource
tipo (consulteConfiguração de WindowsPerformanceCounterSource), o tipo de coletor do CloudWatch do pode receber métricas de uma origem especial que reúne métricas sobre o próprio Kinesis Agent para Windows. As métricas do Kinesis Agent para Windows também estão disponíveis noKinesisTap
categoria de contadores de desempenho do Windows.
OMetricsFilter
O par de chave-valor para as declarações do coletor do CloudWatch do especifica de quais métricas é feito streaming do CloudWatch da origem de métricas incorporadas do Kinesis Agent para Windows. O valor é uma string que contém uma ou mais expressões de filtro separadas por ponto-e-vírgula; por exemplo:
"MetricsFilter": "
FilterExpression1;
FilterExpression2"
É feito streaming de uma métrica que corresponde a uma ou mais expressões de filtro para o CloudWatch.
As métricas de instância única são globais por natureza e não são vinculadas a uma origem ou coletor específico. Várias métricas de instância são dimensionais com base no Id
da declaração de origem ou de coletor. Cada tipo de origem ou coletor pode ter um conjunto diferente de métricas.
Para obter uma lista de nomes de métricas incorporadas do Kinesis Agent para Windows, consulteLista de métricas do agente Kinesis para Windows.
Para métricas de instância única, a expressão de filtro é o nome da métrica, por exemplo:
"MetricsFilter": "SourcesFailedToStart;SinksFailedToStart"
Para várias métricas de instância, a expressão de filtro é o nome da métrica, um ponto (.
) e depois o Id
da origem ou da declaração de coletor que gerou essa métrica. Por exemplo, supondo-se que haja uma declaração de coletor com um Id
de MyFirehose
:
"MetricsFilter": "KinesisFirehoseRecordsFailedNonrecoverable.MyFirehose"
Você pode usar padrões de curinga especiais que são projetados para distinguir entre métricas de várias instâncias ou de uma instância única.
-
O asterisco (
*
) corresponde a zero ou mais caracteres, exceto ponto (.
). -
O ponto de interrogação (
?
) corresponde a um caractere exceto ponto. -
Qualquer outro caractere apenas corresponde a si mesmo.
-
_Total
é um token especial que causa a agregação de todos os valores de várias instâncias correspondentes em toda a dimensão.
O exemplo a seguir corresponde a todas as métricas de instância única:
"MetricsFilter": "*"
Como um asterisco não corresponde ao período de caractere, apenas as métricas de instância são incluídas.
O exemplo a seguir corresponde a várias métricas de instância:
"MetricsFilter": "*.*"
O exemplo a seguir corresponde a todas as métricas (instância única e várias instâncias):
"MetricsFilter": "*;*.*"
O exemplo a seguir agrega todas as métricas de várias instâncias em todas as origens e coletores:
"MetricsFilter": "*._Total"
O exemplo a seguir agrega todas as métricas do Kinesis Data Firehose para todos os coletores do Kinesis Data Firehose:
"MetricsFilter": "*Firehose*._Total"
O exemplo a seguir corresponde a todas as métricas de erro de instância única e de várias instâncias:
"MetricsFilter": "*Failed*;*Error*.*;*Failed*.*"
O exemplo a seguir corresponde a todas as métricas de erro não recuperável agregadas em todas as origens e coletores:
"MetricsFilter": "*Nonrecoverable*._Total"
Para obter informações sobre como especificar um pipe que use a origem de métricas incorporadas do Kinesis Agent para Windows, consulteConfiguração do Kinesis Agent para Pipes Métricos do Windows.
Lista de métricas do agente Kinesis para Windows
Veja a seguir uma lista de métricas de uma instância única e de várias instâncias que estão disponíveis para o Kinesis Agent para Windows.
Métricas de instância única
As seguintes métricas de instância única estão disponíveis:
KinesisTapBuildNumber
-
O número da versão do Kinesis Agent para Windows.
PipesConnected
-
Quantos pipes conectaram sua origem ao coletor com êxito.
PipesFailedToConnect
-
Quantos pipes conectaram sua origem ao coletor sem êxito.
SinkFactoriesFailedToLoad
-
Quantos tipos de coletores não foram carregados para o Kinesis Agent para Windows com êxito.
SinkFactoriesLoaded
-
Quantos tipos de coletores foram carregados para o Kinesis Agent para Windows com êxito.
SinksFailedToStart
-
Quantos coletores não foram iniciados com êxito, geralmente devido a declarações de coletor incorretas.
SinksStarted
-
Quantos coletores foram iniciados com êxito.
SourcesFailedToStart
-
Quantas origens não foram iniciadas com êxito, geralmente devido a declarações de origem incorretas.
SourcesStarted
-
Quantas origens foram iniciadas com êxito.
SourceFactoriesFailedToLoad
-
Quantos tipos de origens não foram carregados para o Kinesis Agent para Windows com êxito.
SourceFactoriesLoaded
-
Quantos tipos de origens foram carregados para o Kinesis Agent para Windows.
Métricas de várias instâncias
A métricas de várias instâncias a seguir estão disponíveis:
Métricas DirectorySource
DirectorySourceBytesRead
-
Quantos bytes foram lidos durante o intervalo para essa
DirectorySource
. DirectorySourceBytesToRead
-
Quantos números conhecidos de bytes estão disponíveis para leitura que ainda não foram lidos pelo Kinesis Agent para Windows.
DirectorySourceFilesToProcess
-
Quantos arquivos conhecidos que ainda não foram examinados pelo Kinesis Agent para Windows.
DirectorySourceRecordsRead
-
Quantos registros foram lidos durante o intervalo para essa
DirectorySource
.
Métricas WindowsEventLogSource
EventLogSourceEventsError
-
Quantos eventos de log de eventos do Windows não foram lidos com êxito.
EventLogSourceEventsRead
-
Quantos eventos de log de eventos do Windows foram lidos com êxito.
Métricas do coletor KinesisFirehose
KinesisFirehoseBytesAccepted
-
Quantos bytes foram aceitos durante o intervalo.
KinesisFirehoseClientLatency
-
Quanto tempo decorreu entre a geração e o streaming dos registros para o serviço Kinesis Data Firehose.
KinesisFirehoseLatency
-
Quanto tempo decorreu entre o início e o fim do streaming dos registros para o serviço Kinesis Data Firehose.
KinesisFirehoseNonrecoverableServiceErrors
-
Quantas vezes não foi possível enviar os registros sem erro para o serviço Kinesis Data Firehose apesar das novas tentativas.
KinesisFirehoseRecordsAttempted
-
De quantos registros houve tentativa de streaming para o serviço de Data Firehose do Kinesis.
KinesisFirehoseRecordsFailedNonrecoverable
-
De quantos registros o streaming não foi feito com êxito para o serviço de Kinesis Data Firehose apesar das novas tentativas.
KinesisFirehoseRecordsFailedRecoverable
-
De quantos registros o streaming foi feito com êxito para o serviço de Kinesis Data Firehose, mas apenas com novas tentativas.
KinesisFirehoseRecordsSuccess
-
De quantos registros o streaming foi feito com êxito para o serviço de Kinesis Data Firehose sem novas tentativas.
KinesisFirehoseRecoverableServiceErrors
-
Quantas vezes foi possível enviar os registros com êxito para o serviço de Kinesis Data Firehose, mas apenas com novas tentativas.
Métricas KinesisStream
KinesisStreamBytesAccepted
-
Quantos bytes foram aceitos durante o intervalo.
KinesisStreamClientLatency
-
Quanto tempo decorreu entre a geração e o streaming dos registros para o serviço de Streams de Dados do Kinesis.
KinesisStreamLatency
-
Quanto tempo decorreu entre o início e o fim do streaming dos registros para o serviço de Streams de Dados do Kinesis.
KinesisStreamNonrecoverableServiceErrors
-
Quantas vezes não foi possível enviar os registros sem erro para o serviço de Streams de Dados do Kinesis apesar das novas tentativas.
KinesisStreamRecordsAttempted
-
De quantos registros houve tentativa de streaming para o serviço de Streams de dados do Kinesis.
KinesisStreamRecordsFailedNonrecoverable
-
De quantos registros o streaming não foi feito com êxito para o serviço de Kinesis Data Streams apesar das novas tentativas.
KinesisStreamRecordsFailedRecoverable
-
De quantos registros o streaming foi feito com êxito para o serviço de Streams de Dados do Kinesis, mas apenas com novas tentativas.
KinesisStreamRecordsSuccess
-
De quantos registros o streaming foi feito com êxito para o serviço de Streams de dados do Kinesis sem novas tentativas.
KinesisStreamRecoverableServiceErrors
-
Quantas vezes foi possível enviar os registros com êxito para o serviço de Kinesis Data Streams, mas apenas com novas tentativas.
Métricas do CloudWatchLog
CloudWatchLogBytesAccepted
-
Quantos bytes foram aceitos durante o intervalo.
CloudWatchLogClientLatency
-
Quanto tempo decorreu entre a geração e o streaming dos registros para o serviço CloudWatch Logs.
CloudWatchLogLatency
-
Quanto tempo decorreu entre o início e o fim do streaming dos registros para o serviço CloudWatch Logs.
CloudWatchLogNonrecoverableServiceErrors
-
Quantas vezes não foi possível enviar os registros sem erro para o serviço do CloudWatch Logs, apesar de repetidas tentativas.
CloudWatchLogRecordsAttempted
-
De quantos registros houve tentativa de streaming para o serviço CloudWatch Logs.
CloudWatchLogRecordsFailedNonrecoverable
-
De quantos registros o streaming não foi feito com êxito para o serviço CloudWatch Logs apesar das novas tentativas.
CloudWatchLogRecordsFailedRecoverable
-
De quantos registros o streaming foi feito com êxito para o serviço CloudWatch Logs, mas apenas com novas tentativas.
CloudWatchLogRecordsSuccess
-
De quantos registros o streaming foi feito com êxito para o serviço CloudWatch Logs sem novas tentativas.
CloudWatchLogRecoverableServiceErrors
-
Quantas vezes foi possível enviar os registros com êxito para o serviço do CloudWatch Logs, mas apenas com novas tentativas.
Métricas do CloudWatch
CloudWatchLatency
-
Quanto tempo em média decorreu entre o início e o fim do streaming de métricas para o serviço do CloudWatch.
CloudWatchNonrecoverableServiceErrors
-
Quantas vezes não foi possível enviar as métricas sem erro para o serviço CloudWatch apesar das novas tentativas.
CloudWatchRecoverableServiceErrors
-
Quantas vezes as métricas foram enviadas sem erro para o serviço CloudWatch, mas apenas com novas tentativas.
CloudWatchServiceSuccess
-
Quantas vezes as métricas foram enviadas sem erro para o serviço CloudWatch sem a necessidade de novas tentativas.
Configuração de marcador
Por padrão, o Kinesis Agent para Windows envia registros de log para coletores que são criados depois que o agente é iniciado. Às vezes é útil enviar registros de log anteriores, por exemplo, registros de log criados durante a interrupção do Agente do Kinesis para o Windows durante uma atualização automática. O recurso de marcador controla quais registros foram enviados para coletores. Quando o Kinesis Agent para Windows está no modo de marcador e é iniciado, ele envia todos os registros de log criados depois que o Kinesis Agent para Windows foi interrompido, junto com todos os registros de log criados posteriormente. Para controlar esse comportamento, as declarações de origem baseada em arquivo podem os seguintes pares de chave-valor:
InitialPosition
-
Especifica a situação inicial para o marcador. Os valores possíveis são:
EOS
-
Especifica o fim do streaming (EOS). Somente os registros de log criados enquanto o agente está em execução são enviados para coletores.
0
-
Todos os registros de log e eventos disponíveis são inicialmente enviados. Depois um marcador é criado para garantir que todos os novos registros de log e eventos criados depois que o marcador foi criado sejam enviados, esteja ou não o Kinesis Agent para Windows em execução.
Bookmark
-
O marcador é inicializado apenas após o último registro de log ou evento. Depois um marcador é criado para garantir que todos os novos registros de log e eventos criados depois que o marcador foi criado sejam enviados, esteja ou não o Kinesis Agent para Windows em execução.
Os marcadores estão habilitados por padrão. Os arquivos são armazenados no
%ProgramData%\Amazon\KinesisTap
diretório. Timestamp
-
Os registros de log e eventos que são criados após o valor
InitialPositionTimestamp
(segue definição) são enviados. Depois um marcador é criado para garantir que todos os novos registros de log e eventos criados depois que o marcador foi criado sejam enviados, esteja ou não o Kinesis Agent para Windows em execução.
InitialPositionTimestamp
-
Especifica o primeiro registro de log ou timestamp de evento mais antigo que você desejar. Especifique esse par chave-valor somente quando
InitialPosition
tem um valor deTimestamp
. BookmarkOnBufferFlush
-
Essa configuração pode ser adicionada a qualquer fonte de favoritos. Quando definido como
true
, garante que as atualizações de marcadores ocorram somente quando um coletor envia com êxito um evento para a AWS. Você só pode inscrever um único coletor em uma fonte. Se você estiver enviando logs para vários destinos, duplique suas fontes para evitar possíveis problemas com a perda de dados.
Quando o Kinesis Agent para Windows foi interrompido por um longo período, pode ser necessário excluir esses marcadores porque os registros de log e eventos marcados podem não existir mais. Arquivos de marcador para um id de origem estão localizados em %PROGRAMDATA%\Amazon\AWSKinesisTap\source
id
..bm
Os marcadores não funcionam em arquivos renomeados ou truncados. Devido à natureza dos eventos ETW e contadores de desempenho, eles não podem ser marcados.