elastic / elastic/ecs-logging-java

Write SequenceNumber in jboss-logmanager-ecs-formatter

Ouverte
#154 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
agent-java community triage
Langage dominant
Java
Étoiles
148
Forks
82
Merge moyen
2 j 17 h
PR mergées (30 j)
3

Description

Hi,

because the "@timestamp" fields in ECS logging only support millisecond-precision, a sequence number is needed to keep the order of events. Adding this sequence number in FileBeat does not seem possible - only workarounds exist which include disabling multithreading (see https://discuss.elastic.co/t/sequence-number-for-ecs-events-received-by-tcp/291348 ).

Thus, the ECS formatter should add the sequence number ( https://www.elastic.co/guide/en/ecs/current/ecs-event.html#field-event-sequence ).

In case of the `co.elastic.logging.jboss.logmanager.EcsFormatter` this should be trivial as the `ExtLogRecord` from which the JSON is built already includes a method `getSequenceNumber`.

Adding the sequence number would solve a range of other issues regarding to log event order.

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Commencez par co.elastic.logging.jboss.logmanager.EcsFormatter et suivez la manière dont ExtLogRecord est converti en JSON. Vérifiez la définition du champ ECS event.sequence ainsi que la couverture de tests existante du formatter, que l’issue ne mentionne pas. Le travail est terminé lorsque la sortie du formatter inclut le numéro de séquence du record dans la structure d’événement ECS.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
java
Domaine
observability-sre
Type d'issue
Fonctionnalité
Difficulté
2/5
Temps estimé
1-3 heures
Activité
À l'abandon
Clarté
Clairement spécifiée
Accessibilité débutants
55/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.