Calculated Fields Extractions est en préversion

Utilisez Calculated Fields Extractions pour extraire des valeurs de vos logs dans le Log Explorer au moment de la requête en utilisant des modèles Grok

Request Access

Présentation

Calculated Fields Extractions vous permet d’appliquer des règles de parsing Grok au moment de la requête dans le Log Explorer, vous permettant d’extraire des valeurs de messages de log bruts ou d’attributs sans modifier les pipelines ni ré-ingérer les données Vous pouvez générer des règles d’extraction automatiquement avec le parsing basé sur l’IA, ou définir manuellement vos propres modèles Grok pour répondre à vos besoins spécifiques.

Pour créer un champ calculé d’extraction, consultez Créer un champ calculé

Parsing automatique

Utilisez le parsing automatique basé sur l’IA pour générer des règles Grok à partir de vos données de log. Datadog analyse le contenu de votre message de log et génère automatiquement une règle d’extraction, éliminant ainsi le besoin d’écrire manuellement des modèles Grok.

Exemple de parsing Grok basé sur l'IA dans Datadog Calculated Fields

Il existe deux façons d’accéder au parsing automatique depuis le panneau latéral des logs :

  1. Cliquez sur le bouton AI à côté du bouton de copie.
  2. Surlignez une partie spécifique du message de log et cliquez sur le bouton AI dans le menu contextuel.

Lorsque vous cliquez sur le bouton AI, Datadog remplit automatiquement le formulaire Calculated Field :

  1. Extract from : Par défaut, le message de log complet. Vous pouvez modifier la liste déroulante pour analyser des attributs individuels à la place.
  2. Log sample : Rempli automatiquement avec le log sélectionné.
  3. Parsing rule : Généré automatiquement à partir de l’échantillon de log.

Examinez et modifiez la règle générée si nécessaire. Vous pouvez la modifier manuellement ou cliquer sur Generate a new rule pour que Datadog réessaie. Vous pouvez également modifier, insérer ou remplacer l’exemple de log pour tester votre règle avec différents formats de log

Utilisez les boutons pouce levé ou pouce baissé pour fournir des commentaires en ligne et aider à améliorer la fonctionnalité.

Syntaxe

Les champs d’extraction utilisent des modèles Grok pour identifier et capturer des valeurs à partir d’un attribut de log Un modèle Grok est composé d’un ou plusieurs jetons sous la forme :

%{PATTERN_NAME:field_name}
  • PATTERN_NAME : Une correspondance Grok.
  • field_name : Le nom du champ calculé extrait.

Vous pouvez enchaîner plusieurs modèles pour analyser des messages de log complexes

Correspondances et filtres pris en charge au moment de la requête

Les fonctionnalités de parsing Grok disponibles au moment de la requête (dans le Log Explorer) prennent en charge un sous-ensemble limité de correspondances (data, integer, notSpace, number et word) et de filtres (number et integer) Pour des besoins de parsing à long terme, définissez un pipeline de logs.

Le parsing Grok au moment de la requête dans le Log Explorer prend en charge un sous-ensemble limité de correspondances et de filtres Chaque correspondance ou filtre est utilisé dans un modèle Grok avec le format :

%{MATCHER:field_name}

Correspondances

CorrespondanceExemple de modèle Grok
data
Toute séquence de caractères (non gourmande)
status=%{data:status}
word
Caractères alphanumériques
country=%{word:country}
number
Nombres à virgule flottante
value=%{number:float_val}
integer
Valeurs entières
count=%{integer:count}
notSpace
Caractères non-espaces
path=%{notSpace:request_path}

Filtres

Appliquez des filtres pour convertir les valeurs extraites en types numériques. Les filtres utilisent la même syntaxe de motif que les correspondances.

FiltreExemple de motif Grok
number
Analyse les chaînes numériques en tant que nombres
latency=%{number:lat}
integer
Analyse les chaînes numériques en tant qu’entiers
users=%{integer:user_count}

Exemple

Utilisez cette fonctionnalité pour analyser les champs de log à la demande sans modifier votre pipeline d’ingestion Ligne de log :

country=Brazil duration=123ms path=/index.html status=200 OK

Règle Grok d’extraction :

country=%{word:country} duration=%{integer:duration} path=%{notSpace:request_path} status=%{data:status}

Camps calculés résultants :

  • #country = Brazil
  • #duration = 123
  • #request_path = /index.html
  • #status = 200 OK

Lectures complémentaires

Documentation, liens et articles supplémentaires utiles: