Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Quell-Deklarationen
In Amazon Kinesis Agent für Microsoft WindowsQuell-DeklarationenGeben Sie an, wo und welche Protokoll-, Ereignis- und Metrikdaten gesammelt werden sollen. Außerdem geben sie optional Informationen für die Analyse dieser Daten an, sodass sie umgewandelt werden können. Die folgenden Abschnitte beschreiben Konfigurationen für die integrierten Quell-Typen, die in Kinesis Agent für Windows verfügbar sind. Da Kinesis Agent für Windows erweiterbar ist, können Sie benutzerdefinierte Quelltypen hinzufügen. Jeder Quelltyp erfordert in der Regel bestimmte Schlüssel-Wert-Paare in den Konfigurationsobjekten, die für diesen Quelltyp relevant sind.
Alle Quell-Deklarationen müssen mindestens die folgenden Schlüssel-Wert-Paare enthalten:
Id
-
Eine eindeutige Zeichenfolge, die ein bestimmtes Quellobjekt innerhalb der Konfigurationsdatei identifiziert.
SourceType
-
Der Name des Quelltyps für dieses Quellobjekt. Der Quelltyp gibt den Ursprung der Protokoll-, Ereignis- oder Metrikdaten an, die von diesem Quellobjekt erfasst werden. Er steuert zudem, welche anderen Aspekte der Quelle deklariert werden können.
Beispiele für vollständige Konfigurationsdateien, die verschiedene Arten von Quell-Deklarationen verwenden, finden Sie unter Streamen aus verschiedenen Quellen an Kinesis Data Streams.
Themen
- DirectorySource-Konfiguration
- ExchangeLogSource-Konfiguration
- W3SVCLogSource-Konfiguration
- UlsSource-Configuration
- WindowsEventLogSource-Konfiguration
- WindowSeventLogPollingSource-Konfiguration
- WindowsETWEventSource-Konfiguration
- WindowsPerformanceCounterSource-Konfiguration
- Integrierte Quelle von Kinesis Agent für Windows -Metriken: Quelle
- Liste der Kinesis Agent für Windows-Metriken
- Lesezeichen-Konfiguration
DirectorySource-Konfiguration
Overview
Der DirectorySource
-Quelltyp sammelt Protokolle aus Dateien, die im angegebenen Verzeichnis gespeichert sind. Da es Protokolldateien in vielen verschiedenen Formate gibt, können Sie mit der DirectorySource
-Deklaration das Format der Daten in der Protokolldatei angeben. Anschließend können Sie den Inhalt des Protokolls in ein Standardformat, z. B. JSON oder XML, transformieren, bevor Sie ihn an verschiedene AWS-Services streamen.
Es folgt ein Beispiel für eine DirectorySource
-Deklaration:
{ "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" }
Alle DirectorySource
-Deklarationen können die folgenden Schlüssel-Wert-Paare angeben:
SourceType
-
Muss die Literalzeichenfolge
"DirectorySource"
sein (erforderlich). Directory
-
Der Pfad zum Verzeichnis mit den Protokolldateien (erforderlich).
FileNameFilter
-
Schränkt optional den Satz von Dateien in dem Verzeichnis ein, in dem Protokolldaten basierend auf einem Dateibenennungsmuster mit Platzhaltern gesammelt werden. Wenn Sie mehrere Protokolldateinamenmuster haben, können Sie mit dieser Funktion eine einzelne
DirectorySource
Verwenden Sie, wie im folgenden Beispiel gezeigt.FileNameFilter: "*.log|*.txt"
Systemadministratoren komprimieren manchmal Protokolldateien, bevor sie archiviert werden. Wenn Sie
"*.*"
inFileNameFilter
, werden bekannte komprimierte Dateien jetzt ausgeschlossen. Diese Funktion verhindert.zip
,.gz
, und.bz2
Dateien versehentlich gestreamt werden. Wenn dieses Schlüssel-Wert-Paar nicht angegeben wird, werden standardmäßig Daten aus allen Dateien im Verzeichnis gesammelt. IncludeSubdirectories
Gibt an, dass Unterverzeichnisse in beliebiger Tiefe vom Betriebssystem begrenzt überwacht werden sollen. Diese Funktion ist nützlich für die Überwachung von Webservern mit mehreren Websites. Sie können auch die verwenden:
IncludeDirectoryFilter
-Attribut, um nur bestimmte Unterverzeichnisse zu überwachen, die im Filter angegeben sind.RecordParser
-
Gibt an, wie der
DirectorySource
-Quelltyp die Protokolldateien analysieren soll, die im angegebenen Verzeichnis gefunden werden. Dieses Schlüssel-Wert-Paar ist erforderlich, und die gültigen Werte sind wie folgt:-
SingleLine
— Jede Zeile der Protokolldatei ist ein Protokolldatensatz. -
SingleLineJson
— Jede Zeile der Protokolldatei ist ein JSON-formatierter Protokolldatensatz. Dieser Parser ist nützlich, wenn Sie zusätzliche Schlüssel-Wert-Paare zur JSON-fähigen Objektausstattung hinzufügen möchten. Weitere Informationen finden Sie unter Konfigurieren von Senken-Ausstattungen. Ein Beispiel für denSingleLineJson
-Datensatz-Parser finden Sie unter Tutorial: Streamen von JSON-Protokolldateien mit Kinesis Agent für Windows zu Amazon S3. -
Timestamp
— Eine oder mehrere Zeilen können einen Protokolldatensatz enthalten. Der Protokolldatensatz beginnt mit einem Zeitstempel. Diese Option erfordert die Angabe desTimestampFormat
-Schlüssel-Wert-Paares. -
Regex
— Jeder Datensatz beginnt mit Text, der einem bestimmten regulären Ausdruck entspricht. Diese Option erfordert die Angabe desPattern
-Schlüssel-Wert-Paares. -
SysLog
— Gibt an, dass die Protokolldatei in dassyslogStandardformat. Die Analyse der Protokolldatei in Datensätze wird basierend auf dieser Spezifikation durchgeführt. -
Delimited
— Eine einfachere Version des Regex-Datensatzparsers, bei dem Datenelemente in den Protokolldatensätzen durch ein konsistentes Trennzeichen getrennt werden. Diese Option ist einfacher in der Verwendung und schneller auszuführen als der Regex-Parser und wird bevorzugt, wenn diese Option verfügbar ist. Wenn Sie diese Option verwenden, müssen Sie dasDelimiter
-Schlüssel-Wert-Paar angeben.
-
TimestampField
-
Gibt an, welches JSON-Feld den Zeitstempel für den Datensatz enthält. Dies wird nur mit dem
SingleLineJson
RecordParser
verwendet. Dieses Schlüssel-Wert-Paar ist optional. Wenn es nicht angegeben wird, verwendet Kinesis Agent für Windows den Zeitpunkt, als der Datensatz für den Zeitstempel gelesen wurde. Ein Vorteil für die Angabe dieses Schlüssel-Wert-Paares ist, dass von Kinesis Agent für Windows erstellte Latenzstatistiken genauer sind. TimestampFormat
-
Gibt an, wie Datum und Uhrzeit, die dem Datensatz zugeordnet sind, zu analysieren sind. Der Wert ist entweder die Zeichenfolge
epoch
oder eine .NET-Formatzeichenfolge für Datum und Uhrzeit. Wenn der Wertepoch
ist, wird die Uhrzeit basierend auf der UNIX-Epoche-Zeit analysiert. Weitere Informationen zur UNIX-Epoche-Zeit finden Sie unter Unix-Zeit. Weitere Informationen zu .NET-Formatzeichenfolgen für Datum/Uhrzeit finden Sie unter Custom Date and Time Format Strings in der Microsoft .NET-Dokumentation. Dieses Schlüssel-Wert-Paar ist nur erforderlich, wenn der Timestamp
-Datensatz-Parser angegeben wird oder wenn derSingleLineJson
-Datensatz-Parser zusammen mit demTimestampField
-Schlüssel-Wert-Paar angegeben wird. Pattern
-
Gibt einen regulären Ausdruck an, der mit der ersten Zeile eines potenziell mehrzeiligen Datensatzes übereinstimmen muss. Dieses Schlüssel-Wert-Paar ist nur für den
Regex
-Datensatz-Parser erforderlich. ExtractionPattern
-
Gibt einen regulären Ausdruck an, der benannte Gruppen verwenden soll. Der Datensatz wird unter Verwendung dieses regulären Ausdrucks analysiert, und die benannten Gruppen bilden die Felder des analysierten Datensatzes. Diese Felder werden dann als Basis für die Erstellung von JSON- oder XML-Objekten oder -Dokumenten verwendet, die durch Senken an verschiedene AWS-Services gestreamt werden. Dieses Schlüssel-Wert-Paar ist optional und ist mit der Option
Regex
Datensatzparser und der Timestamp-Parser.Der
Timestamp
-Gruppenname wird speziell verarbeitet, da er demRegex
-Parser anzeigt, welches Feld das Datum und die Uhrzeit für jeden Datensatz in jeder Protokolldatei enthält. Delimiter
-
Gibt das Zeichen und die Zeichenfolge an, durch die jedes Element in jedem Protokolldatensatz getrennt wird. Dieses Schlüssel-Wert-Paar darf (und kann) nur mit dem
Delimited
-Datensatz-Parser verwendet werden. Verwenden Sie zur Darstellung des Tabulatorzeichens die aus zwei Buchstaben bestehende Sequenz\t
. HeaderPattern
-
Gibt einen regulären Ausdruck zur Anpassung der Zeile in der Protokolldatei an, die die Gruppe von Headern für den Datensatz enthält. Wenn die Protokolldatei keine Header-Informationen enthält, verwenden Sie das
Headers
-Schlüssel-Wert-Paar zur Angabe der impliziten Header. DiesesHeaderPattern
-Schlüssel-Wert-Paar ist optional und ist nur für denDelimited
-Datensatz-Parser gültig.Anmerkung
Ein leerer (0 Länge) Header-Eintrag für eine Spalte bewirkt, dass die Daten für diese Spalte aus der endgültigen Ausgabe der analysierten
DirectorySource
-Ausgabe gefiltert werden. Headers
-
Gibt die Namen für die analysierten Datenspalten unter Verwendung des angegebenen Trennzeichens an. Dieses Schlüssel-Wert-Paar ist optional und ist nur für den
Delimited
-Datensatz-Parser gültig.Anmerkung
Ein leerer (0 Länge) Header-Eintrag für eine Spalte bewirkt, dass die Daten für diese Spalte aus der endgültigen Ausgabe der analysierten
DirectorySource
-Ausgabe gefiltert werden. RecordPattern
-
Gibt einen regulären Ausdruck an, der Zeilen in der Protokolldatei mit Datensatzdaten identifiziert. Außer der von
HeaderPattern
identifizierten Header-Zeile werden Zeilen, die nicht mit dem angegebenenRecordPattern
übereinstimmen, während der Datensatzverarbeitung ignoriert. Dieses Schlüssel-Wert-Paar ist optional und ist nur für denDelimited
-Datensatz-Parser gültig. Wenn es nicht angegeben wird, wird standardmäßig eine beliebige Zeile, die nicht mit dem optionalenHeaderPattern
oder dem optionalenCommentPattern
übereinstimmt, als eine Zeile mit analysierbaren Datensatzdaten angesehen. CommentPattern
-
Gibt einen regulären Ausdruck an, der Zeilen in der Protokolldatei identifiziert, die ausgeschlossen werden sollen, bevor die Daten in der Protokolldatei analysiert werden. Dieses Schlüssel-Wert-Paar ist optional und ist nur für den
Delimited
-Datensatz-Parser gültig. Wenn es nicht angegeben wird, wird standardmäßig eine beliebige Zeile, die nicht mit dem optionalenHeaderPattern
übereinstimmt, als eine Zeile mit analysierbaren Datensatzdaten angesehen, sofern nichtRecordPattern
angegeben wird. TimeZoneKind
-
Gibt an, ob sich der Zeitstempel in der Protokolldatei auf die lokale Zeitzone oder die UTC-Zeitzone bezieht. Dies ist optional und standardmäßig auf UTC eingestellt. Die einzigen gültigen Werte für dieses Schlüssel-Wert-Paar sind
Local
oderUTC
. Der Zeitstempel wird niemals geändert, wennTimeZoneKind
nicht angegeben wird oder wenn der Wert UTC ist. Der Zeitstempel wird in UTC konvertiert, wenn derTimeZoneKind
Wert istLocal
Die Senke, die den Zeitstempel empfängt, ist CloudWatch Logs, oder wenn der analysierte Datensatz zu anderen Senken gesendet wird. Datums- und Zeitangaben, die in Meldungen eingebettet sind, werden nicht konvertiert. SkipLines
-
Steuert, sofern angegeben, die Anzahl von Zeilen, die am Anfang jeder Protokolldatei ignoriert werden, bevor der Datensatz analysiert wird. Dies ist optional und der Standardwert ist 0.
- Codierung
Standardmäßig kann Kinesis Agent für Windows die Codierung automatisch aus Bytemark erkennen. Bei einigen älteren Unicode-Formaten funktioniert die automatische Codierung jedoch möglicherweise nicht korrekt. Im folgenden Beispiel wird die Codierung angegeben, die zum Streamen eines Microsoft SQL Server-Protokolls erforderlich ist.
"Encoding": "utf-16"
Eine Liste der Codierungsnamen finden Sie unterListe der Kodierungen
in der Microsoft .NET-Dokumentation. - ExtractionRegexOptions
Sie können die Verwendung von
ExtractionRegexOptions
Reguläre Ausdrücke zu vereinfachen. Dieses Schlüssel-Wert-Paar ist optional. Der Standardwert ist"None"
.Im folgenden Beispiel wird angegeben, dass die Eigenschaft
"."
Ausdruck entspricht einem beliebigen Zeichen, einschließlich\r\n
."ExtractionRegexOptions" = "
Multiline
"Eine Liste möglicher Felder für ExtractionRegexOptions finden Sie unter der DokumentationRegExOptions-Aufzählungsum
in der Microsoft .NET-Dokumentation.
Regex
-Datensatz-Parser
Sie können unstrukturierte Textprotokolle mit dem Regex
-Datensatz-Parser zusammen mit den TimestampFormat
–, Pattern
- und ExtractionPattern
-Schlüssel-Wert-Paaren analysieren. Angenommen, Ihre Protokolldatei sieht folgendermaßen aus:
[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'
Sie können in diesem Fall den folgenden regulären Ausdruck für das Pattern
-Schlüssel-Wert-Paar angeben, um die Protokolldatei leichter in einzelne Protokolldatensätze aufzuteilen:
^\[\w+\]\[(?<TimeStamp>\d{4}/\d{2}/\d{2} \d{2}:\d{2}:\d{2}\.\d{3})\]
Dieser reguläre Ausdruck weist folgende Sequenz auf:
-
Die Startposition der auszuwertenden Zeichenfolge.
-
Ein oder mehrere Wortzeichen in eckigen Klammern.
-
Ein Zeitstempel in eckigen Klammern. Der Zeitstempel weist folgende Sequenz auf:
-
Das vierstellige Jahr
-
Ein Schrägstrich
-
Der zweistellige Monat
-
Ein Schrägstrich
-
Der zweistellige Tag
-
Ein Leerzeichen
-
Die zweistellige Stunde
-
Ein Doppelpunkt
-
Die zweistellige Minute
-
Ein Doppelpunkt
-
Die zweistellige Sekunde
-
Ein Punkt
-
Die dreistellige Millisekunde
-
Sie können das folgende Format für das TimestampFormat
-Schlüssel-Wert-Paar angeben, um den Zeitstempel in Textform in ein Datum und eine Uhrzeit umzuwandeln:
yyyy/MM/dd HH:mm:ss.fff
Sie können den folgenden regulären Ausdruck zum Extrahieren der Felder des Protokolldatensatzes über das ExtractionPattern
-Schlüssel-Wert-Paar extrahieren.
^\[(?<Severity>\w+)\]\[(?<TimeStamp>\d{4}/\d{2}/\d{2} \d{2}:\d{2}:\d{2}\.\d{3})\]\[[^]]*\]\[[^]]*\]\[[^]]*\]\[(?<SubSystem>\w+)\]\[(?<Module>\w+)\]\[[^]]*\] '(?<Message>.*)'$
Dieser reguläre Ausdruck weist die folgenden Gruppen in der Sequenz auf:
-
Severity
— Ein oder mehrere Wortzeichen in eckigen Klammern. -
TimeStamp
— Siehe die vorherige Beschreibung des Zeitstempels. -
Drei unbenannte Sequenzen mit null oder mehr Zeichen in eckigen Klammern werden übersprungen.
-
SubSystem
— Ein oder mehrere Wortzeichen in eckigen Klammern. -
Module
— Ein oder mehrere Wortzeichen in eckigen Klammern. -
Eine unbenannte Sequenz mit null oder mehr Zeichen in eckigen Klammern wird übersprungen.
-
Eine unbenannte Leerstelle wird übersprungen.
-
Message
— Null oder mehr Zeichen, die von einfachen Anführungszeichen umgeben sind.
Die folgende Quell-Deklaration kombiniert diese regulären Ausdrücke und das Format für Datum und Uhrzeit in den vollständigen Anleitungen für Kinesis Agent für Windows zum Analysieren dieser Art von Protokolldatei.
{ "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" }
Anmerkung
Umgekehrte Schrägstriche in JSON-formatierten Dateien müssen mit einem zusätzlichen umgekehrten Schrägstrich als Escapezeichen geschützt werden.
Weitere Informationen zu regulären Ausdrücken finden Sie unter Regular Expression Language - Quick Reference
Delimited
-Datensatz-Parser
Sie können mit dem Delimited
-Datensatz-Parser halbstrukturierte Protokoll- und Datendateien analysieren, bei denen die einzelnen Datenspalten in den einzelnen Datenzeile durch eine konsistente Zeichenfolge voneinander getrennt sind. Beispiel: In CSV-Dateien sind die einzelnen Spaltendaten durch ein Semikolon und bei TSV-Dateien durch ein Tabulatorzeichen voneinander getrennt.
Angenommen, Sie möchten eine Microsoft Protokolldatei im NPS-Datenbankformat
"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,,,,
Das folgende Beispiel einer appsettings.json
-Konfigurationsdatei enthält eine DirectorySource
-Deklaration, die diesen Text mittels eines Delimited
-Datensatz-Parsers als Objektdarstellung analysiert. Anschließend streamt sie die Daten im JSON-Format an 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" } ] }
An Kinesis Data Firehose gestreamt Daten im JSON-Format sehen wie folgt aus:
{ "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": "" }
SysLog
-Datensatz-Parser
Für den SysLog
-Datensatz-Parser enthält die analysierte Ausgabe aus der Quelle die folgenden Informationen:
Attribut | Typ | Beschreibung |
---|---|---|
SysLogTimeStamp |
Zeichenfolge | Das ursprüngliche Datum und die ursprüngliche Uhrzeit aus der Syslog-formatierten Protokolldatei. |
Hostname |
Zeichenfolge | Der Name des Computers, auf dem die Syslog-formatierte Protokolldatei gespeichert ist. |
Program |
Zeichenfolge | Der Name der Anwendung oder des Service, mit der bzw. dem die Protokolldatei erstellt wurde. |
Message |
Zeichenfolge | Der von der Anwendung oder dem Service erstellte Protokolleintrag. |
TimeStamp |
Zeichenfolge | Das analysierte Datum und die analysierte Uhrzeit im ISO 8601-Format. |
Im Folgenden finden Sie ein Beispiel von in das JSON-Format umgewandelten SysLog-Daten:
{ "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
Im Folgenden finden Sie eine Zusammenfassung der verfügbaren Schlüssel-Wert-Paare für die DirectorySource
-Quelle und die RecordParser
, die sich auf diese Schlüssel-Wert-Paare beziehen.
Schlüsselname | RecordParser | Hinweise |
---|---|---|
SourceType |
Erforderlich für alle | Der Wert muss DirectorySource lauten |
Directory |
Erforderlich für alle | |
FileNameFilter |
Optional für alle | |
RecordParser |
Erforderlich für alle | |
TimestampField |
Optional für SingleLineJson |
|
TimestampFormat |
Erforderlich für Timestamp und für SingleLineJson , wenn TimestampField angegeben wird |
|
Pattern |
Erforderlich für Regex |
|
ExtractionPattern |
Optional für Regex |
Erforderlich für Regex , wenn die Senke als Format json oder xml angibt |
Delimiter |
Erforderlich für Delimited |
|
HeaderPattern |
Optional für Delimited |
|
Headers |
Optional für Delimited |
|
RecordPattern |
Optional für Delimited |
|
CommentPattern |
Optional für Delimited |
|
TimeZoneKind |
Optional für Regex , Timestamp , SysLog und SingleLineJson , wenn ein Zeitstempel-Feld identifiziert wird |
|
SkipLines |
Optional für alle |
ExchangeLogSource-Konfiguration
Der ExchangeLogSource
-Typ wird verwendet, um Protokolle von Microsoft Exchange zu sammeln. Exchange erstellt Protokolle in mehrere verschiedene Protokollformaten. Dieser Quelltyp analysiert alle von ihnen. Es ist zwar auch möglich, sie unter Verwendung des Typs DirectorySource
mit dem Datensatz-Parser Regex
zu analysieren, aber wesentlich einfacher, ExchangeLogSource
zu verwenden. Dies liegt daran, dass Sie für die Protokolldateiformate keine regulären Ausdrücke entwerfen und bereitstellen müssen. Es folgt ein Beispiel für eine ExchangeLogSource
-Deklaration:
{ "Id": "MyExchangeLog", "SourceType": "ExchangeLogSource", "Directory": "C:\\temp\\ExchangeLogTest", "FileNameFilter": "*.log" }
Alle Exchange-Deklarationen können die folgenden Schlüssel-Wert-Paare angeben:
SourceType
-
Muss die Literalzeichenfolge
"ExchangeLogSource"
sein (erforderlich). Directory
-
Der Pfad zum Verzeichnis mit den Protokolldateien (erforderlich).
FileNameFilter
-
Schränkt optional den Satz von Dateien in dem Verzeichnis ein, in dem Protokolldaten basierend auf einem Dateibenennungsmuster mit Platzhaltern gesammelt werden. Wenn dieses Schlüssel-Wert-Paar nicht angegeben wird, werden standardmäßig Protokolldaten aus allen Dateien im Verzeichnis gesammelt.
TimestampField
-
Der Name der Spalte enthält das Datum und die Uhrzeit für den Datensatz. Dieses Schlüssel-Wert-Paar ist optional und muss nicht angegeben werden, wenn der Feldname
date-time
oderDateTime
lautet. Andernfalls ist er erforderlich.
W3SVCLogSource-Konfiguration
Der Typ W3SVCLogSource
wird verwendet, um Protokolle von Internet Information Services (IIS) für Windows zu sammeln.
Es folgt ein Beispiel für eine W3SVCLogSource
-Deklaration:
{ "Id": "MyW3SVCLog", "SourceType": "W3SVCLogSource", "Directory": "C:\\inetpub\\logs\\LogFiles\\W3SVC1", "FileNameFilter": "*.log" }
Alle W3SVCLogSource
-Deklarationen können die folgenden Schlüssel-Wert-Paare angeben:
SourceType
-
Muss die Literalzeichenfolge
"W3SVCLogSource"
sein (erforderlich). Directory
-
Der Pfad zum Verzeichnis mit den Protokolldateien (erforderlich).
FileNameFilter
-
Schränkt optional den Satz von Dateien in dem Verzeichnis ein, in dem Protokolldaten basierend auf einem Dateibenennungsmuster mit Platzhaltern gesammelt werden. Wenn dieses Schlüssel-Wert-Paar nicht angegeben wird, werden standardmäßig Protokolldaten aus allen Dateien im Verzeichnis gesammelt.
UlsSource-Configuration
Der UlsSource
-Typ wird verwendet, um Protokolle von Microsoft SharePoint zu sammeln. Es folgt ein Beispiel für eine UlsSource
-Deklaration:
{ "Id": "UlsSource", "SourceType": "UlsSource", "Directory": "C:\\temp\\uls", "FileNameFilter": "*.log" }
Alle UlsSource
-Deklarationen können die folgenden Schlüssel-Wert-Paare angeben:
SourceType
-
Muss die Literalzeichenfolge
"UlsSource"
sein (erforderlich). Directory
-
Der Pfad zum Verzeichnis mit den Protokolldateien (erforderlich).
FileNameFilter
-
Schränkt optional den Satz von Dateien in dem Verzeichnis ein, in dem Protokolldaten basierend auf einem Dateibenennungsmuster mit Platzhaltern gesammelt werden. Wenn dieses Schlüssel-Wert-Paar nicht angegeben wird, werden standardmäßig Protokolldaten aus allen Dateien im Verzeichnis gesammelt.
WindowsEventLogSource-Konfiguration
Der Typ WindowsEventLogSource
wird verwendet, um Ereignisse vom Windows-Ereignisprotokoll-Service zu sammeln. Es folgt ein Beispiel für eine WindowsEventLogSource
-Deklaration:
{ "Id": "mySecurityLog", "SourceType": "WindowsEventLogSource", "LogName": "Security" }
Alle WindowsEventLogSource
-Deklarationen können die folgenden Schlüssel-Wert-Paare angeben:
SourceType
-
Muss die Literalzeichenfolge
"WindowsEventLogSource"
sein (erforderlich). LogName
-
Ereignisse werden aus dem angegebenen Protokoll gesammelt. Geläufige Werte sind
Application
,Security
undSystem
, Sie können aber einen beliebigen gültigen Windows-Ereignisprotokollnamen angeben. Dieser Schlüssel-Wert-Paar ist erforderlich. Query
-
Schränkt optional ein, welche Ereignisse von
WindowsEventLogSource
ausgegeben werden. Wenn dieses Schlüssel-Wert-Paar nicht angegeben wird, werden standardmäßig alle Ereignisse ausgegeben. Weitere Informationen zur Syntax dieses Wertes finden Sie unter Event Queries and Event XMLin der Windows-Dokumentation. Weitere Informationen zu Definitionen auf Protokollebene finden Sie unter Event Types in der Windows-Dokumentation. IncludeEventData
-
Ermöglicht optional das Sammeln und Streamen von anbieterspezifischen Ereignisdaten im Zusammenhang mit Ereignissen aus dem angegebenen Windows-Ereignisprotokoll, wenn der Wert des Schlüssel-Wert-Paares
"true"
ist. Eingeschlossen werden nur Ereignisdaten, die erfolgreich serialisiert werden können. Dieses Schlüssel-Wert-Paar ist optional. Wenn es nicht angegeben wird, werden keine anbieterspezifische Ereignisdaten gesammelt.Anmerkung
Wenn Ereignisdaten eingeschlossen werden, könnte sich die von dieser Quelle gestreamte Datenmenge signifikant erhöhen. Die maximale Größe eines Ereignisses mit eingeschlossenen Ereignisdaten kann 262.143 Bytes betragen.
Die analysierte Ausgabe von WindowsEventLogSource
enthält die folgenden Informationen:
Attribut | Typ | Beschreibung |
---|---|---|
EventId |
Int | Die ID der Art von Ereignisses. |
Description |
Zeichenfolge | Text zur Beschreibung der Details des Ereignisses. |
LevelDisplayName |
Zeichenfolge | Die Kategorie des Ereignisses (Fehler, Warnung, Informationen, Erfolgsüberwachung, Fehlerüberwachung). |
LogName |
Zeichenfolge | Wo das Ereignis aufgezeichnet wurde (typische Werte sind Application , Security und System , aber es gibt zahlreiche Möglichkeiten). |
MachineName |
Zeichenfolge | Von welchem Computer das Ereignis aufgezeichnet wurde. |
ProviderName |
Zeichenfolge | Von welcher Anwendung oder welchem Service das Ereignis aufgezeichnet wurde. |
TimeCreated |
Zeichenfolge | Wann das Ereignis aufgetreten ist, im ISO 8601-Format. |
Index |
Int | An welcher Stelle im Protokoll sich das Ereignis befindet. |
UserName |
Zeichenfolge | Wer den Eintrag verfasst hat, sofern bekannt. |
Keywords |
Zeichenfolge | Der Ereignistyp. Standard-Werte sind AuditFailure (fehlgeschlagene Sicherheitsüberwachungsereignisse), AuditSuccess (erfolgreiche Sicherheitsüberwachungsereignisse), Classic (mit der Funktion RaiseEvent gemeldete Ereignisse), Correlation Hint (Übertragungsereignisse), SQM (Ereignisse des Servicequalitätsmechanismus), WDI Context (Kontextereignisse der Windows Diagnostic Infrastructure) und WDI Diag (Diagnoseereignisse der Windows Diagnostic Infrastructure). |
EventData |
Liste von Objekten | Optionale anbieterspezifische zusätzliche Daten über das Protokollereignis. Diese werden nur eingeschlossen, wenn der Wert für das IncludeEventData -Schlüssel-Wert-Paar "true" lautet. |
Es folgt ein Beispiel eines in das JSON-Format umgewandelten Ereignisses:
{[ "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==" ]}
WindowSeventLogPollingSource-Konfiguration
WindowsEventLogPollingSource
verwendet einen abfragebasierten Mechanismus, um alle neuen Ereignisse aus dem Ereignisprotokoll zu sammeln, die den konfigurierten Parametern entsprechen. Das Abrufintervall wird dynamisch zwischen 100 ms und 5000 ms aktualisiert, je nachdem, wie viele Ereignisse während der letzten Umfrage gesammelt wurden. Es folgt ein Beispiel für eine WindowsEventLogPollingSource
-Deklaration:
{ "Id": "MySecurityLog", "SourceType": "WindowsEventLogPollingSource", "LogName": "Security", "IncludeEventData": "true", "Query": "", "CustomFilters": "ExcludeOwnSecurityEvents" }
Alle WindowsEventLogPollingSource
-Deklarationen können die folgenden Schlüssel-Wert-Paare angeben:
SourceType
-
Muss die Literalzeichenfolge
"WindowsEventLogPollingSource"
sein (erforderlich). LogName
-
Gibt das Protokoll an. Gültige Optionen sind:
Application
,Security
,System
oder andere gültige Protokolle. IncludeEventData
-
Optional. Wann
true
, gibt an, dass zusätzliche EventData beim Streamen als JSON und XML enthalten ist. Der Standardwert istfalse
. Query
Optional. Windows-Ereignisprotokolle unterstützen das Abfragen von Ereignissen mithilfe von XPath-Ausdrücken, die Sie mit
Query
. Weitere Informationen finden Sie unterEreignisabfragen und Ereignis-XMLin der Microsoft-Dokumentation. CustomFilters
-
Optional. Eine Liste von Filtern, die durch ein Semikolon getrennt sind (
;
) enthalten. Die folgenden Filter können angegeben werden.ExcludeOwnSecurityEvents
Schließt Sicherheitsereignisse aus, die von Kinesis Agent für Windows selbst generiert wurden.
WindowsETWEventSource-Konfiguration
Der WindowsETWEventSource
-Typ wird verwendet, um Ereignisablaufverfolgungen für Anwendungen und Services mithilfe der Funktion Event Tracing for Windows (ETW) zu sammeln. Weitere Informationen finden Sie unter Event Tracing
Es folgt ein Beispiel für eine WindowsETWEventSource
-Deklaration:
{ "Id": "ClrETWEventSource", "SourceType": "WindowsETWEventSource", "ProviderName": "Microsoft-Windows-DotNETRuntime", "TraceLevel": "Verbose", "MatchAnyKeyword": 32768 }
Alle WindowsETWEventSource
-Deklarationen können die folgenden Schlüssel-Wert-Paare angeben:
SourceType
-
Muss die Literalzeichenfolge
"WindowsETWEventSource"
sein (erforderlich). ProviderName
-
Gibt an, welcher Ereignisanbieter zum Sammeln von Ablaufverfolgungsereignissen verwendet werden soll. Dies muss ein gültiger ETW-Anbietername für einen installierten Anbieter sein. Um zu bestimmen, welche Anbieter installiert sind, führen Sie in einem Windows-Befehlszeilenfenster Folgendes aus:
logman query providers
TraceLevel
-
Gibt an, welche Kategorien von Ablaufverfolgungsereignissen erfasst werden sollen. Zulässige Werte sind
Critical
,Error
,Warning
,Informational
undVerbose
. Die genaue Bedeutung ist von dem jeweils ausgewählten ETW-Anbieter abhängig. MatchAnyKeyword
-
Dieser Wert ist eine 64-Bit-Zahl, bei der jedes Bit ein einzelnes Schlüsselwort darstellt. Jedes Schlüsselwort beschreibt eine Kategorie von Ereignissen, die erfasst werden sollen. Informationen zu den unterstützten Schlüsselwörtern und deren Werten und Beziehung zu
TraceLevel
finden Sie in der Dokumentation des Anbieters. Beispiel: Informationen über den CLR-ETW-Anbieter finden Sie unter CLR ETW Keywords and Levelsin der Microsoft .NET Framework-Dokumentation. Im vorherigen Beispiel stellt 32768 (0x00008000) das
ExceptionKeyword
für den CLR-ETW-Anbieter dar, durch das der Anbieter angewiesen wird, Informationen zu den ausgelösten Ausnahmen zu erfassen. Obwohl JSON keine Hex-Konstanten unterstützt, können Sie sie fürMatchAnyKeyword
angeben, indem Sie sie in einer Zeichenfolge platzieren. Sie können auch mehrere, durch Kommata getrennte Konstanten eingeben. Führen Sie z. B. die folgenden Schritt durch, um sowohlExceptionKeyword
als auchSecurityKeyword
(0x00000400) anzugeben:{ "Id": "MyClrETWEventSource", "SourceType": "WindowsETWEventSource", "ProviderName": "Microsoft-Windows-DotNETRuntime", "TraceLevel": "Verbose", "MatchAnyKeyword": "0x00008000, 0x00000400" }
Um sicherzustellen, dass alle angegebenen Schlüsselwörter für einen Anbieter aktiviert sind, werden mehrere Schlüsselwortwerte mit OR miteinander kombiniert und an diesen Anbieter übergeben.
Die Ausgabe von WindowsETWEventSource
enthält die folgenden Informationen für jedes Ereignis:
Attribut | Typ | Beschreibung |
---|---|---|
EventName |
Zeichenfolge | Welche Art von Ereignis aufgetreten ist. |
ProviderName |
Zeichenfolge | Welcher Anbieter das Ereignis erkannt hat. |
FormattedMessage |
Zeichenfolge | Ein Text mit einer Zusammenfassung des Ereignisses. |
ProcessID |
Int | Welcher Prozess das Ereignis gemeldet hat. |
ExecutingThreadID |
Int | Welcher Thread innerhalb der Prozesses das Ereignis gemeldet hat. |
MachineName |
Zeichenfolge | Der Name des Desktops oder Servers, von dem das Ereignis gemeldet wird. |
Payload |
Hashtabelle | Eine Tabelle mit einem Zeichenfolgenschlüssel und jeder Art von Objekt als Wert. Der Schlüssel ist der Name des Nutzlastelements und der Wert ist der Wert des Nutzlastelements. Die Nutzlast ist anbieterabhängig. |
Es folgt ein Beispiel eines in das JSON-Format umgewandelten Ereignisses:
{ "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 } }
WindowsPerformanceCounterSource-Konfiguration
Der WindowsPerformanceCounterSource
-Typ erfasst die Leistungsindikator-Metriken von Windows. Es folgt ein Beispiel für eine WindowsPerformanceCounterSource
-Deklaration:
{ "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"] } ] }
Alle WindowsPerformanceCounterSource
-Deklarationen können die folgenden Schlüssel-Wert-Paare angeben:
SourceType
-
Muss die Literalzeichenfolge
"WindowsPerformanceCounterSource"
sein (erforderlich). Categories
-
Gibt einen Satz von Leistungsindikator-Metrikgruppen an, die von Windows erfasst werden sollen. Jede Metrikgruppe enthält die folgenden Schlüssel-Wert-Paare:
Category
-
Gibt den Leistungsindikatorsatz von Metriken an, die erfasst werden sollen (erforderlich).
Instances
-
Gibt den Satz relevanter Objekte an, wenn ein eindeutiger Satz von Leistungsindikatoren pro Objekt vorhanden ist. Wenn die Kategorie beispielsweise
LogicalDisk
lautet, ist ein Satz von Leistungsindikatoren pro Festplattenlaufwerk vorhanden. Dieses Schlüssel-Wert-Paar ist optional. Sie könne die Platzhalter*
und?
verwenden, um mehrere Instances abzugleichen. Um Werte für alle Instances zu aggregieren, geben Sie_Total
an.Sie können auch
InstanceRegex
, die reguläre Ausdrücke akzeptiert, die die*
Platzhalterzeichen als Teil des Instanznamens. Counters
-
Gibt an, welche Metriken für die angegebene Kategorie zu sammeln sind. Dieser Schlüssel-Wert-Paar ist erforderlich. Sie könne die Platzhalter
*
und?
verwenden, um mehrere Leistungsindikatoren abzugleichen. Sie könnenCounters
nur nach Namen oder nach Namen und Einheit angeben. Wenn keine Leistungsindikatoreinheiten angegeben werden, versucht Kinesis Agent für Windows, die Einheiten vom Namen abzuleiten. Wenn diese Inferenzen falsch sind, kann die Einheit explizit angegeben werden. Sie können dieCounter
-Namen auf Wunsch ändern. Die komplexere Darstellung eines Leisungsindikators ist ein Objekt mit den folgenden Schlüssel-Wert-Paaren:Counter
-
Der Name des Leistungsindikators. Dieser Schlüssel-Wert-Paar ist erforderlich.
Rename
-
Der der Senke anzuzeigende Name des Leistungsindikators. Dieses Schlüssel-Wert-Paar ist optional.
Unit
-
Die Bedeutung des Wertes, der mit dem Leistungsindikator verknüpft ist. Eine vollständige Liste gültiger Namen für Einheiten finden Sie in der Dokumentation zu Einheiten unterMetricDatum, mit derimAmazon CloudWatch ch-API-Referenz.
Es folgt ein Beispiel für eine komplexe Leistungsindikator-Spezifikation:
{ "Counter": "Disk Reads/sec, "Rename": "Disk Reads per second", "Unit": "Count/Second" }
WindowsPerformanceCounterSource
Kann nur mit einer Pipe verwendet werden, die eine Amazon CloudWatch ch-Senke angibt. Verwenden Sie eine separate Senke, wenn integrierte -Metriken von Kinesis Agent für Windows auch zu CloudWatch gestreamt werden. Überprüfen Sie nach dem Start des -Service das Kinesis Agent für Windows-Protokoll, welche Einheiten für Leistungsindikatoren abgeleitet wurden, wenn keine Einheiten in denWindowsPerformanceCounterSource
-Deklarationen. Bestimmen Sie mithilfe von PowerShell die gültigen Namen für Kategorien, Instances und Leistungsindikatoren.
Um Informationen zu allen Kategorien, einschließlich mit Leistungsindikatorsätzen verknüpften Leistungsindikatoren, anzuzeigen, führen Sie diesen Befehl in einem PowerShell-Fenster aus:
Get-Counter -ListSet * | Sort-Object
Um zu bestimmen, welche Instances für jeden der Leistungsindikatoren im Leistungsindikatorsatz verfügbar sind, führen Sie in einem PowerShell-Fenster einen Befehl wie den folgenden aus:
Get-Counter -Counter "\Process(*)\% Processor Time"
Der Wert des Counter
-Parameters sollte einer der Pfade aus einem untergeordneten PathsWithInstances
-Elements sein, das durch den vorherigen Get-Counter -ListSet
-Befehlsaufruf aufgeführt wurde.
Integrierte Quelle von Kinesis Agent für Windows -Metriken: Quelle
Zusätzlich zu gewöhnlichen Metrikquellen wie demWindowsPerformanceCounterSource
Typ (sieheWindowsPerformanceCounterSource-Konfiguration), kann der -Senkentyp von CloudWatch Metriken von einer besonderen Quelle erhalten, die Metriken zu Kinesis Agent für Windows selbst erfasst. Kinesis Agent für Windows-Metriken sind auch im BereichKinesisTap
-Kategorie von Windows-Leistungsindikatoren.
DieMetricsFilter
Das -Schlüssel-Wert-Paar für die CloudWatch enken-Deklarationen gibt an, welche Metriken von der integrierten -Kinesis Agent für Windows-Metrikenquelle an CloudWatch gestreamt werden. Der Wert ist eine Zeichenfolge mit einem oder mehreren Filterausdrücken, die durch Semikolons getrennt sind, z. B.:
"MetricsFilter": "
FilterExpression1;
FilterExpression2"
Eine Metrik, die mit einem oder mehreren Filterausdrücken übereinstimmt, wird zu CloudWatch gestreamt.
Einzel-Instance-Metriken sind global und nicht an eine bestimmte Quelle oder Senke gebunden. Mehrfach-Instance-Metriken sind dimensional basierend auf der Id
der Quell- oder Senken-Deklaration. Jeder Quell- oder Senkentyp kann über einen anderen Satz von Metriken verfügen.
Eine Liste integrierter -Metriknamen von Kinesis Agent für Windows finden Sie unterListe der Kinesis Agent für Windows-Metriken.
Bei Einzel-Instance-Metriken ist der Filterausdruck der Name der Metrik, z. B.:
"MetricsFilter": "SourcesFailedToStart;SinksFailedToStart"
Bei Mehrfach-Instance-Metriken ist der Filterausdruck der Name der Metrik, ein Punkt (.
) und dann die Id
der Quell- oder Senken-Deklaration, von der die Metrik generiert wurde. Angenommen, die Id
einer Senken-Deklaration lautet MyFirehose
:
"MetricsFilter": "KinesisFirehoseRecordsFailedNonrecoverable.MyFirehose"
Sie können in diesem Fall spezielle Platzhaltermuster verwenden, die zwischen Einzel-Instance- und Mehrfach-Instance-Metriken unterscheiden.
-
Das Sternchen (
*
) entspricht null oder mehreren Zeichen außer einem Punkt (.
). -
Das Fragezeichen (
?
) entspricht jedem beliebigen Zeichen außer einem Punkt. -
Alle anderen Zeichen entsprechen nur ihnen selbst.
-
_Total
ist ein spezielles Token, das die Aggregation aller übereinstimmenden Werte mehrerer Instances für die Dimension bewirkt.
Das folgende Beispiel entspricht allen Einzel-Instance-Metriken:
"MetricsFilter": "*"
Da ein Sternchen keinem Punkt entspricht, werden nur Einzel-Instance-Metriken eingeschlossen.
Das folgende Beispiel entspricht allen Mehrfach-Instance-Metriken:
"MetricsFilter": "*.*"
Das folgende Beispiel entspricht allen Metriken (Einzel- und Mehrfach-Instance):
"MetricsFilter": "*;*.*"
Das folgende Beispiel fasst alle Mehrfach-Instance-Metriken für alle Quellen und Senken zusammen:
"MetricsFilter": "*._Total"
Im folgenden Beispiel werden alle Kinesis Data Firehose -Metriken für alle Kinesis Data Firehose Senken aggregiert:
"MetricsFilter": "*Firehose*._Total"
Das folgende Beispiel entspricht allen Einzel- und Mehrfach-Instance-Fehlermetriken:
"MetricsFilter": "*Failed*;*Error*.*;*Failed*.*"
Das folgende Beispiel entspricht allen nicht wiederherstellbaren Fehlermetriken, die für alle Quellen und Senken aggregiert werden:
"MetricsFilter": "*Nonrecoverable*._Total"
Informationen dazu, wie eine Pipe angegeben wird, die die integrierte -Metrikquelle von Kinesis Agent für Windows verwendet, finden Sie unterKonfigurieren von Kinesis Agent für Windows-Metrik-Pipes.
Liste der Kinesis Agent für Windows-Metriken
Im Folgenden finden Sie eine Liste der Einzel-Instance- und Mehrfach-Instance-Metriken, die für Kinesis Agent für Windows verfügbar sind.
Einzel-Instance-Metriken
Die folgenden Einzel-Instance-Metriken sind verfügbar:
KinesisTapBuildNumber
-
Die Versionsnummer von Kinesis Agent für Windows.
PipesConnected
-
Anzahl von Pipes, die ihre Quelle erfolgreich mit ihrer Senke verbunden haben.
PipesFailedToConnect
-
Anzahl von Pipes, die ihre Quelle nicht erfolgreich mit ihrer Senke verbunden haben.
SinkFactoriesFailedToLoad
-
Anzahl von Senkungsarten, die nicht erfolgreich in Kinesis Agent für Windows geladen wurden.
SinkFactoriesLoaded
-
Anzahl von Senkungsarten, die erfolgreich in Kinesis Agent für Windows geladen wurden.
SinksFailedToStart
-
Anzahl von Senken, die gewöhnlich aufgrund inkorrekter Senken-Deklarationen nicht erfolgreich gestartet wurden.
SinksStarted
-
Anzahl von Senken, die erfolgreich gestartet wurden.
SourcesFailedToStart
-
Anzahl von Quellen, die gewöhnlich aufgrund inkorrekter Quell-Deklarationen nicht erfolgreich gestartet wurden.
SourcesStarted
-
Anzahl von Quellen, die erfolgreich gestartet wurden.
SourceFactoriesFailedToLoad
-
Anzahl von Quelltypen, die nicht erfolgreich in Kinesis Agent für Windows geladen wurden.
SourceFactoriesLoaded
-
Anzahl von Quelltypen, die erfolgreich in Kinesis Agent für Windows geladen wurden.
Mehrfach-Instance-Metriken
Die folgenden Mehrfach-Instance-Metriken sind verfügbar:
DirectorySource-Metriken
DirectorySourceBytesRead
-
Anzahl von Bytes, die während des Intervalls für diese
DirectorySource
gelesen wurden. DirectorySourceBytesToRead
-
Anzahl der bekannten zum Lesen verfügbare Bytes, die von Kinesis Agent für Windows noch nicht gelesen wurden.
DirectorySourceFilesToProcess
-
Anzahl von bekannten zu untersuchenden bekannten Dateien, die von Kinesis Agent für Windows noch nicht untersucht wurden.
DirectorySourceRecordsRead
-
Anzahl von Datensätzen, die während des Intervalls für diese
DirectorySource
gelesen wurden.
WindowsEventLogSource-Metriken
EventLogSourceEventsError
-
Anzahl von Windows-Ereignisprotokoll-Ereignissen, die nicht erfolgreich gelesen wurden.
EventLogSourceEventsRead
-
Anzahl von Windows-Ereignisprotokoll-Ereignissen, die erfolgreich gelesen wurden.
KinesisFirehose-Senken-Metriken
KinesisFirehoseBytesAccepted
-
Anzahl von Bytes, die während des Intervalls akzeptiert wurden.
KinesisFirehoseClientLatency
-
Zeitspanne, die zwischen dem Erstellen und dem Streamen des Datensatzes an den -Service von Kinesis Data Firehose verstrichen ist.
KinesisFirehoseLatency
-
Zeitspanne, die zwischen dem Beginn und dem Ende des Datensatz-Streamings für den Kinesis Data Firehose -Service verstrichen ist.
KinesisFirehoseNonrecoverableServiceErrors
-
Häufigkeit, mit der Datensätze trotz Neuversuche nicht fehlerfrei an den Kinesis Data Firehose -Service gesendet werden konnten.
KinesisFirehoseRecordsAttempted
-
Anzahl von Datensätzen, bei denen das Streamen an den Kinesis Data Firehose -Service versucht wurde.
KinesisFirehoseRecordsFailedNonrecoverable
-
Anzahl von Datensätzen, die trotz Wiederholungsversuche nicht erfolgreich an den Kinesis Data Firehose -Service gestreamt wurden.
KinesisFirehoseRecordsFailedRecoverable
-
Anzahl von Datensätzen, die erfolgreich an den Kinesis Data Firehose -Service gestreamt wurden, aber nur mit Wiederholungsversuchen.
KinesisFirehoseRecordsSuccess
-
Anzahl von Datensätzen, die erfolgreich ohne Wiederholungsversuche an den Kinesis Data Firehose -Service gestreamt wurden.
KinesisFirehoseRecoverableServiceErrors
-
Häufigkeit, mit der Datensätze erfolgreich an den Kinesis Data Firehose -Service gesendet werden konnten, aber nur mit Wiederholungsversuchen.
KinesisStream-Metrics
KinesisStreamBytesAccepted
-
Anzahl von Bytes, die während des Intervalls akzeptiert wurden.
KinesisStreamClientLatency
-
Zeitspanne, die zwischen dem Erstellen und dem Streamen des Datensatzes an den -Service für Kinesis Data Streams verstrichen ist.
KinesisStreamLatency
-
Zeitspanne, die zwischen dem Beginn und dem Ende des Datensatz-Streamings für den -Service Kinesis Data Streams verstrichen ist.
KinesisStreamNonrecoverableServiceErrors
-
Häufigkeit, mit der Datensätze trotz Neuversuche nicht fehlerfrei an den Kinesis Data Streams -Service gesendet werden konnten.
KinesisStreamRecordsAttempted
-
Anzahl von Datensätzen, bei denen das Streamen an den Kinesis Data Streams -Service versucht wurde.
KinesisStreamRecordsFailedNonrecoverable
-
Anzahl von Datensätzen, die trotz Wiederholungsversuche nicht erfolgreich an den Kinesis Data Streams -Service gestreamt wurden.
KinesisStreamRecordsFailedRecoverable
-
Anzahl von Datensätzen, die erfolgreich an den Kinesis-Datenstream-Service gestreamt wurden, aber nur mit Wiederholungsversuchen.
KinesisStreamRecordsSuccess
-
Anzahl von Datensätzen, die erfolgreich ohne Wiederholungsversuche an den Kinesis Data Streams -Service gestreamt wurden.
KinesisStreamRecoverableServiceErrors
-
Häufigkeit, mit der Datensätze erfolgreich an den Kinesis Data Streams -Service gesendet werden konnten, aber nur mit Wiederholungsversuchen.
CloudWatchLog-Metriken
CloudWatchLogBytesAccepted
-
Anzahl von Bytes, die während des Intervalls akzeptiert wurden.
CloudWatchLogClientLatency
-
Anzahl von Datensatz-Generierung und Datensatz-Streamen an den CloudWatch Logs -Service.
CloudWatchLogLatency
-
Zeitspanne, die zwischen dem Beginn und dem Ende des Datensatz-Streamings für den CloudWatch Logs -Service verstrichen ist.
CloudWatchLogNonrecoverableServiceErrors
-
Häufigkeit, mit der Datensätze trotz Wiederholungsversuche nicht fehlerfrei an den CloudWatch Logs -Service gesendet werden konnten.
CloudWatchLogRecordsAttempted
-
Anzahl von Datensätzen, bei denen das Streamen an den CloudWatch Logs -Service versucht wurde.
CloudWatchLogRecordsFailedNonrecoverable
-
Anzahl von Datensätzen, die trotz Wiederholungsversuche nicht erfolgreich an den CloudWatch Logs -Service gestreamt wurden.
CloudWatchLogRecordsFailedRecoverable
-
Anzahl von Datensätzen, die erfolgreich an den CloudWatch Logs -Service gestreamt wurden, aber nur mit Wiederholungsversuchen.
CloudWatchLogRecordsSuccess
-
Anzahl von Datensätzen, die erfolgreich ohne Wiederholungsversuche an den CloudWatch Logs -Service gestreamt wurden.
CloudWatchLogRecoverableServiceErrors
-
Häufigkeit, mit der Datensätze erfolgreich an den CloudWatch Logs -Service gesendet werden konnten, aber nur mit Wiederholungsversuchen.
CloudWatch-Metriken
CloudWatchLatency
-
Durchschnittliche Zeitspanne, die zwischen dem Beginn und dem Ende des Metrik-Streamings für den CloudWatch -Service verstrichen ist.
CloudWatchNonrecoverableServiceErrors
-
Häufigkeit, mit der Metriken trotz Wiederholungsversuche nicht fehlerfrei an den CloudWatch ch-Service gesendet werden konnten.
CloudWatchRecoverableServiceErrors
-
Häufigkeit, mit der Metriken fehlerfrei an den CloudWatch ch-Service gesendet wurden, aber nur mit Wiederholungsversuchen.
CloudWatchServiceSuccess
-
Häufigkeit, mit der Metriken fehlerfrei an den CloudWatch ch-Service gesendet wurden, ohne erforderliche Wiederholungsversuche.
Lesezeichen-Konfiguration
Standardmäßig sendet Kinesis Agent für Windows Protokolldatensätze an Senken, die nach dem Starten des Agenten erstellt werden. Manchmal ist es sinnvoll, frühere Protokolldatensätze zu senden, z. B. Protokolldatensätze, die in dem Zeitraum erstellt werden, wenn Kinesis Agent für Windows während einer automatischen Aktualisierung gestoppt wird. Die Lesezeichen-Funktion verfolgt, welche Datensätze zu Senken gesendet wurden. Wenn Kinesis Agent für Windows im Lesezeichenmodus gestartet wird, sendet er alle Protokolldatensätze, die erstellt wurden, nachdem Kinesis Agent für Windows gestoppt wurde, zusammen mit allen anschließend erstellten Protokolldatensätzen. Zur Steuerung dieses Verhaltens können dateibasierte Quell-Deklarationen optional die folgenden Schlüssel-Wert-Paare enthalten:
InitialPosition
-
Gibt die anfängliche Situation für das Lesezeichen an. Die möglichen Werte lauten wie folgt:
EOS
-
Legt das Ende des Streams- (EOS) fest. Es werden nur Protokolldatensätze, die bei aktiven Agenten erstellt wurden, an Senken gesendet.
0
-
Alle verfügbaren Protokolldatensätze und Ereignisse werden anfänglich gesendet. Danach wird ein Lesezeichen erstellt, um sicherzustellen, dass alle Protokolldatensätze und Ereignisse, die nach dem Hinzufügen des Lesezeichens erstellt wurden, auf alle Fälle gesendet werden, egal ob Kinesis Agent für Windows aktiv ist oder ob nicht.
Bookmark
-
Das Lesezeichen wird direkt nach dem neuesten Protokolldatensatz oder Ereignis initialisiert. Danach wird ein Lesezeichen erstellt, um sicherzustellen, dass alle Protokolldatensätze und Ereignisse, die nach dem Hinzufügen des Lesezeichens erstellt wurden, auf alle Fälle gesendet werden, egal ob Kinesis Agent für Windows aktiv ist oder ob nicht.
Standardmäßig sind Lesezeichen aktiviert. Dateien werden in der Eigenschaft
%ProgramData%\Amazon\KinesisTap
-Verzeichnis. Timestamp
-
Es werden Protokolldatensätze und Ereignisse gesendet, die nach dem Wert
InitialPositionTimestamp
(Definition folgt) erstellt wurden. Danach wird ein Lesezeichen erstellt, um sicherzustellen, dass alle Protokolldatensätze und Ereignisse, die nach dem Hinzufügen des Lesezeichens erstellt wurden, auf alle Fälle gesendet werden, egal ob Kinesis Agent für Windows aktiv ist oder ob nicht.
InitialPositionTimestamp
-
Gibt den von Ihnen gewünschten frühesten Protokolldatensatz- oder Ereigniszeitstempel an. Geben Sie dieses Schlüssel-Wert-Paar nur dann an, wenn der Parameter
InitialPosition
den WertTimestamp
hat. BookmarkOnBufferFlush
-
Diese Einstellung kann beliebigen Lesezeichenquellen hinzugefügt werden. Bei Einstellung auf
true
, stellt sicher, dass Lesezeichenaktualisierungen nur durchgeführt werden, wenn eine Senke erfolgreich ein Ereignis an AWS versendet. Sie können nur eine einzelne Senke für eine Quelle abonnieren. Wenn Sie Protokolle an mehrere Ziele senden, duplizieren Sie Ihre Quellen, um potenzielle Probleme mit Datenverlust zu vermeiden.
Wenn Kinesis Agent für Windows für eine lange Zeit angehalten wurde, müssen diese Lesezeichen möglicherweise gelöscht werden, da die mit einem Lesezeichen versehenen Protokolldatensätze und Ereignisse möglicherweise nicht mehr vorhanden sind. Lesezeichendateien für eine bestimmte Quell-ID befinden sich in %PROGRAMDATA%\Amazon\AWSKinesisTap\source
id
..bm
Lesezeichen funktionieren nicht bei Dateien, die umbenannt oder abgeschnitten wurden. ETW-Ereignisse und Leistungsindikatoren können aufgrund ihrer Beschaffenheit nicht mit einem Lesezeichen versehen werden.