Erfassen von „ Windows “-Ereignisprotokollen mit „ OpenTelemetry “
Sie können Protokolle von Betriebssystemen auf Basis von „ Windows “ erfassen und mithilfe des „ OpenTelemetry “ (OTEL)-Collectors an Instana senden. Instana kann OTEL-Protokolle über verschiedene Mechanismen empfangen.
Weitere Informationen finden Sie unter „Konfigurieren der Datenerfassung in der „ OpenTelemetry “.
Weitere Informationen zur Konfiguration der Korrelation von Protokollmeldungen mit Diensten finden Sie unter „ OpenTelemetry -Dienstkorrelation “.
Voraussetzung für die Übernahme von Protokollen über „ OpenTelemetry “
Um Protokolle über OpenTelemetry, in Instana zu importieren, benötigen Sie möglicherweise ein Add-on oder zusätzliche Konfigurationen. Weitere Informationen finden Sie unter „Lizenz- und Berechtigungsanforderungen “.
Arten von Ereignisprotokollen in „ Windows “
Der Empfänger „ Windows “ sammelt Protokolle aus dem Ereignisprotokoll „ Windows “ API, darunter die folgenden:
Windows Protokolle
- Anwendung
- Sicherheit
- Einrichtung
- System
- Weitergeleitete Ereignisse
Anwendungen und Serviceprotokolle
Windows -Ereignisprotokolle erfassen
Sie müssen den „ OpenTelemetry “-Collector so konfigurieren, dass er die Ereignisprotokolle von „ Windows “ erfasst und zur Überwachung und Analyse an Instana sendet.
Konfiguration des OTEL-Kollektors für „ Windows “-Protokolle
Laden Sie die otelcol-contrib ausführbare Binärdatei der Version „ 0.110.0 “ oder höher von der Seite „ Windows “ herunter, entsprechend der Konfiguration Ihres „ Windows “-Servers. Das OTEL Collector Contrib Paket enthält von der Community entwickelte Open-Source-Funktionen, die für die Erfassung und Übermittlung von Protokollen an Instana erforderlich sind. Konfigurieren Sie den OTEL Collector so, dass er Ereignisprotokolldaten von „ Windows “ mithilfe des windowseventlog Empfängers erfasst und die Protokolldaten an den Endpunkt „ OTLP “ des Instana -Agenten weiterleitet. Für die Konfiguration des OTEL-Kollektors dient das folgende Beispiel als Referenz.
Wenn Sie mit dem „ Instana “-Agenten über „ TLS “-verschlüsselte Methoden kommunizieren möchten, führen Sie die folgenden Schritte aus, um die „ TLS “-Verschlüsselung für den Endpunkt des Agenten einzurichten.
receivers:
## [REQUIRED] Configures the capture of Windows Event Logs from the "application" channel
windowseventlog:
channel: application
attributes:
type: windows
exporters:
## [REQUIRED] The Instana Agent supports GRPC payloads
otlp/instanaAgent:
## Be sure to set the appropriate HOST:PORT combination.
## Note: The GRPC port will be 4317 (unless port-forwarding is used to change this).
endpoint: "INSTANA_AGENT_HOST:INSTANA_AGENT_GRPC_PORT"
## TLS encryption is disabled in this example.
tls:
insecure: true
processors:
## [OPTIONAL] This is an example log severity parser that sets the **severity_text** field in the log payload, each runs in-order such that the highest matching severity is set.
## Note: If the OpenTelemetry Collector does not set log severity, then the severity is set by Instana when analyzing the log message.
transform/set_log_severity:
log_statements:
- context: log
statements:
- set(severity_text, "Info") where IsMatch(body.string, ".*INFO.*")
- set(severity_text, "Warn") where IsMatch(body.string, ".*WARN.*")
- set(severity_text, "Error") where IsMatch(body.string, ".*ERROR.*")
- set(severity_text, "Fatal") where IsMatch(body.string, ".*FATAL.*")
## [REQUIRED] Logs must be sent in batches for performance reasons.
## Note: No additional `batch` processor configuration is provided since configuration depends on the user scenario.
batch: {}
## See the page on best practices for Instana OpenTelemetry logging for more information.
service:
pipelines:
## [REQUIRED] Sample logs pipeline using the above configurations.
logs:
receivers: [windowseventlog]
processors: [transform/set_log_severity, batch]
exporters: [otlp/instanaAgent]
Erstellen von benutzerdefinierten Anwendungs- und Dienstprotokollen
Manchmal sind die Anwendungs-und Serviceprotokolle nicht für die Erfassung durch den OTEL-Collector verfügbar. In diesem Fall müssen Sie angepasste Anwendungen und Serviceprotokolle erstellen, indem Sie die folgenden Befehle ausführen:
New-EventLog -LogName "Customlog" -Source "MySource"
Write-EventLog -LogName "Customlog" -Source "MySource" -EntryType Error -EventId 1001 -Message "This is an error message body for testing."
Das Cmdlet New-EventLog in PowerShell erstellt ein neues Ereignisprotokoll. Es erstellt jedoch nicht direkt ein Ereignis mit einem Hauptteil und einer Wertigkeit. Daher müssen Sie zum Erstellen eines Ereignisses mit bestimmten Details, einschließlich Hauptteil und Wertigkeit, das Cmdlet Write-EventLog verwenden.
Eingabe der OTEL-Sammlerdaten
Sie können den OTEL-Kollektor für Ingress-Daten als Benutzer mit oder ohne Verwaltungsaufgaben verwenden.
Daten als Nicht-Administrator eingeben
Führen Sie als Benutzer ohne Verwaltungsaufgaben die folgenden Schritte aus, um Ingress-Daten mit dem OTEL-Collector zu erfassen:
- Wählen Sie unter „ Windows “ oder auf VM „Start“ > „Einstellungen“ > „Konten “.
- Klicken Sie auf Andere Person zu diesem PC hinzufügen.
- Klicken Sie im Menü Lokale Benutzer und Gruppen mit der rechten Maustaste auf Benutzer und wählen Sie Neuen Benutzer erstellenaus.
- Fügen Sie den neu erstellten Benutzer zur Gruppe Ereignisprotokollleser hinzu.
- Führen Sie die Schritte aus, die im Abschnitt Daten als Benutzer mit Verwaltungsaufgaben verarbeiten beschrieben sind.
Daten als Administrator eingeben
Führen Sie als Benutzer mit Verwaltungsaufgaben die folgenden Schritte aus, um Daten mithilfe des OTEL-Kollektors einzugehen:
Laden Sie die ausführbare Binärdatei, die als komprimierte Tar-Datei (
.tar.gz) verpackt ist, von den Releases unter Windows herunter, entsprechend Ihrer Windows -Serverkonfiguration. Jede Collector-Version von „ OpenTelemetry “ enthält eineotelcol.exeDatei, die Sie nach dem Entpacken ausführen können.Laden Sie bei einem 64-Bit-Betriebssystem x64-based Prozessor die neueste Datei
otelcol-contrib_*_windows_amd64.tar.gzherunter.Führen Sie zum Starten des OTEL-Kollektors die ausführbare Binärdatei aus und übergeben Sie
opentelemetry-collector-config.yamlals Parameter:C:\Users\Administrator>otelcol-contrib.exe --config opentelemetry-collector-config.yamlUm zu Testzwecken ein benutzerdefiniertes Ereignisprotokoll für die Anwendung „ Windows “ zu erstellen, führen Sie den folgenden Befehl aus:
C:\Users\Administrator>eventcreate /t ERROR /id 123 /L APPLICATION /D "Test log generation_05:52"Um alle Ereignisprotokolle von „ Windows “ abzurufen, ändern Sie die Konfigurationsfelder in der
opentelemetry-collector-config.yamlDatei:receivers: windowseventlog: channel: applicationUm alle Sicherheitsprotokolle zu „ Windows “-Ereignissen abzurufen, ändern Sie die folgenden Konfigurationsfelder in der
opentelemetry-collector-config.yamlDatei:receivers: windowseventlog: channel: securityWenn Sie verschiedene Protokolltypen wünschen, ändern Sie das Feld
channelmit dem erforderlichen Protokolltyp.