Analysieren und visualisieren Sie CSV-Protokolle mit Excel Elastic Stack (Docker-Compose) - Zwei Möglichkeiten, mit Logstash OutOfMemoryError umzugehen

Einführung

Vielen Dank! Ein Ingenieur, der für den Produktinspektionsprozess in der Abteilung Produktionstechnik verantwortlich ist. Das Analysieren und Visualisieren von CSV-Protokollen mit Excel Elastic Stack (Docker-Compose) - Elastic Stack ist eine Fortsetzung.

Zielgruppe

Dieser Artikel richtet sich an Personen, die Elastic Stack noch nicht kennen und darüber nachdenken, ihn auszuprobieren.

Inhalt dieses Artikels

Wenn Sie eine große Anzahl von Dateien von Filebeat zu Logstash übertragen, wird möglicherweise der folgende Fehler angezeigt, und Logstash stürzt ab. Ich werde Ihnen zeigen, wie Sie damit umgehen sollen.

java.lang.OutOfMemoryError: Java heap space
Dumping heap to java_pid1.hprof ...
Heap dump file created [3178685347 bytes in 34.188 secs]
warning: thread "[main]>worker11" terminated with exception (report_on_exception is true):
warning: thread "[main]>worker4" terminated with exception (report_on_exception is true):
java.lang.OutOfMemoryError: Java heap space

Ich habe eine Reihe von Einstellungsdateien in GitLab eingefügt. Bitte beziehen Sie sich darauf. Klicken Sie hier für das Repository-> Elastic-Stack

Fehlerursache

Wie aus dem Fehlerinhalt hervorgeht, ist die Ursache eine unzureichende Heap-Größe.

Was tun, wenn genügend physischer Speicher vorhanden ist?

Erstellen Sie eine jvm.options-Datei und ändern Sie die folgende Heap-Größe. Befolgen Sie die Anweisungen unter JVM-Einstellungen, um herauszufinden, wie viel Sie einstellen sollten. Bitte konsultiere.

logstash/config/jvm.options


## JVM configuration

# Xms represents the initial size of total heap space
# Xmx represents the maximum size of total heap space

-Xms1g
-Xmx1g

Was tun, wenn nicht genügend physischer Speicher vorhanden ist?

Sie können den Verarbeitungsaufwand begrenzen, indem Sie Pipeline.batch.size oder Pipeline.workers ändern. Der Standardwert für die Stapelgröße ist 125, und Worker ist die Anzahl der CPUs auf dem Host-PC. Die offizielle Dokumentation ist hier.

logstash/config/pipelines.yml


- pipeline.id: filebeat-processing
  pipeline.batch.size: 50

Schließlich

In Bezug auf Elasticsearch wird laut Official Blog die Nutzung des Elasticsearch-Heap-Bereichs ab 7.7 Scheint deutlich zu sinken. Wenn Sie Probleme mit dem Elasticsearch-Speicher haben, überprüfen Sie bitte die Version.

Recommended Posts

Analysieren und visualisieren Sie CSV-Protokolle mit Excel Elastic Stack (Docker-Compose) - Zwei Möglichkeiten, mit Logstash OutOfMemoryError umzugehen
Analysieren und Visualisieren von CSV-Protokollen mit Excel Elastic Stack (Docker-Compose) - Was ist Elastic Stack?
Analysieren und visualisieren Sie CSV-Protokolle mit Excel Elastic Stack (Docker-Compose) - Richten Sie Docker-Compose ein
Analysieren und visualisieren Sie CSV-Protokolle mit Excel Elastic Stack (Docker-Compose) - Empfangen Sie Eingaben von mehreren Beats mit Pipeline-to-Pipeline von Logstash
Analysieren und visualisieren Sie CSV-Protokolle mit Excel Elastic Stack (Docker-Compose)
Analysieren und visualisieren Sie CSV-Protokolle mit Excel Elastic Stack (Docker-Compose) - (1. Zeile: Datum, 2. und nachfolgende Zeilen: CSV-Daten) Datum wird jeder Zeile nach der 2. Zeile als Zeitstempelfeld hinzugefügt.
Führen Sie logstash mit Docker aus und versuchen Sie, Daten in Elastic Cloud hochzuladen