Analysez et visualisez les journaux csv avec Excel Elastic Stack (docker-compose) - Deux façons de gérer Logstash OutOfMemoryError

introduction

Merci! Un ingénieur en charge du processus d'inspection des produits au sein du département d'ingénierie de production. Analyse et visualisation des journaux csv avec Excel Elastic Stack (docker-compose) --Elastic Stack est une continuation.

Public cible

Cet article est destiné à ceux qui découvrent Elastic Stack et qui envisagent de l'essayer.

Contenu de cet article

Si vous transférez un grand nombre de fichiers de filebeat vers logstash, vous pouvez obtenir l'erreur suivante et logstash se bloque. Je vais vous montrer comment y faire face.

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

J'ai mis un ensemble de fichiers de paramètres dans GitLab, veuillez donc vous y référer. Cliquez ici pour le dépôt-> élastique-stack

Cause d'erreur

Comme l'indique le contenu de l'erreur, la cause est une taille de tas insuffisante.

Que faire si la taille de la mémoire physique est suffisante

Créez un fichier jvm.options et modifiez la taille de tas suivante. Suivez les instructions dans JVM Setting pour savoir combien vous devez définir. Veuillez consulter.

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

Que faire s'il n'y a pas assez de mémoire physique

Vous pouvez limiter la quantité de traitement en modifiant pipeline.batch.size ou pipeline.workers. La valeur par défaut de la taille du lot est de 125 et les nœuds de calcul est le nombre de processeurs sur le PC hôte. La documentation officielle est ici.

logstash/config/pipelines.yml


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

finalement

Concernant Elasticsearch, selon le Blog officiel, l'utilisation de la zone de tas Elasticsearch à partir de la 7.7 Semble descendre de manière significative. Si vous rencontrez des problèmes avec la mémoire Elasticsearch, veuillez consulter la version.

Recommended Posts

Analysez et visualisez les journaux csv avec Excel Elastic Stack (docker-compose) - Deux façons de gérer Logstash OutOfMemoryError
Analyse et visualisation des journaux CSV avec Excel Elastic Stack (docker-compose) - Qu'est-ce qu'Elastic Stack?
Analysez et visualisez les journaux CSV avec Excel Elastic Stack (docker-compose) - Configurez avec docker-compose
Analysez et visualisez les journaux CSV avec Excel Elastic Stack (docker-compose) - Recevez des entrées de plusieurs battements avec Pipeline-to-Pipeline de Logstash
Analysez et visualisez les journaux csv avec Excel Elastic Stack (docker-compose) --Parse "année / mois / jour, heure: minute: seconde" en multiligne avec filtre grok et traitez-le comme du temps japonais
Analysez et visualisez les journaux csv avec Excel Elastic Stack (docker-compose) - (1ère ligne: date, 2ème ligne et lignes suivantes: données csv) la date est ajoutée à chaque ligne après la 2ème ligne en tant que champ d'horodatage.
Exécutez logstash avec Docker et essayez de télécharger des données sur Elastic Cloud