Générer des métriques à partir de logs ingérés

Présentation

La solution Logging without Limits* de Datadog vous permet de trier de façon dynamique les éléments à inclure ou à exclure de vos index, afin de les stocker en vue de les interroger. Parallèlement, de nombreux types de logs sont utilisés à des fins de télémétrie afin de surveiller des tendances (comme des KPI) sur de longues périodes. Les métriques basées sur des logs constituent une solution rentable vous permettant d’obtenir une synthèse des données de log à partir de l’ensemble du flux d’ingestion. Ainsi, même si vous utilisez des filtres d’exclusion pour limiter les éléments stockés pour de futures analyses, vous pouvez toujours visualiser les tendances et les anomalies sur toutes vos données de log, avec une granularité de 10 secondes pendant 15 mois.

Avec des métriques basées sur des logs, vous pouvez générer une métrique count représentant le nombre de logs qui correspondent à une requête, ou une métrique de distribution représentant une valeur numérique contenue dans des logs, comme la durée des requêtes.

Générer une métrique basée sur des logs

Générer une métrique basée sur des logs

Pour générer une nouvelle métrique basée sur des logs, accédez à la page Configuration de votre compte Datadog et sélectionnez l’onglet Generate Metrics, puis le bouton New Metric+.

Vous pouvez également créer des métriques à partir d’une recherche Analytics en sélectionnant l’option « Generate new metric » depuis le menu Export.

Générer une métrique basée sur des logs

Ajouter une nouvelle métrique basée sur des logs

Créer une métrique basée sur des logs
  1. Saisissez une requête pour filtrer le flux de logs : la syntaxe de la requête est la même que pour la recherche du Log Explorer. Seuls les logs ingérés avec un timestamp ne dépassant pas les 20 dernières minutes sont pris en compte lors de l’agrégation.
  2. Sélectionnez le champ que vous souhaitez surveiller : choisissez * pour obtenir le nombre total de logs qui correspondent à votre requête, ou saisissez un attribut de log (p. ex., @network.bytes_written) pour agréger une valeur numérique et créer sa métrique agrégée correspondante (count, min, max, sum et avg). Si la facette d’attribut de log est une mesure, la valeur de la métrique correspond à la valeur de l’attribut de log.
  3. Ajoutez des dimensions en fonction desquelles effectuer le regroupement avec group by : par défaut, aucun tag n’est appliqué aux métriques générées à partir de logs, sauf si vous avez explicitement choisi d’en ajouter. Toute dimension d’attribut ou de tag présente dans vos logs (par exemple, @network.bytes_written, env) peut être utilisée pour créer des tags de métrique. Les noms des tags de métrique correspondent au nom de l’attribut ou du tag à leur origine, sans le caractère « @ ». Les métriques basées sur des logs sont considérées comme des métriques custom. Évitez d’effectuer des regroupements à partir d’attributs sans restriction ou présentant une cardinalité extrêmement élevée, tels que des timestamps, des ID utilisateur, des ID de requête ou des ID de session, pour éviter une hausse conséquente de vos coûts. Consultez la page relative à la sécurité des logs pour en savoir plus sur l’utilisation de cette fonctionnalité pour les clients soumis à la loi HIPAA.
  4. Ajoutez des agrégations en centiles : pour les métriques de distribution, vous pouvez générer les centiles p50, p75, p90, p95, et p99. Les métriques en centiles sont également considérées comme des métriques custom, et sont facturées comme telles.
  5. Donnez un nom à votre métrique : les noms de métriques basées sur des logs doivent suivre la convention de nommage des métriques.

Remarque : les points de données pour les métriques basées sur des logs sont générés à des intervalles de dix secondes.

Mettre à jour une métrique basée sur des logs

Lorsqu’une métrique est créée, les champs suivants peuvent être mis à jour :

  • Stream filter query : ce champ permet de modifier le groupe de logs à agréger pour générer les métriques.
  • Aggregation groups : ce champ permet de modifier les tags ou de gérer la cardinalité des métriques générées.
  • Percentile selection : cochez ou décochez la case « Calculate percentiles » pour supprimer ou générer des métriques en centiles.

Pour modifier le type ou le nom d’une métrique, une nouvelle métrique doit être créée.

Métriques d’utilisation des logs

Métriques d'utilisation conseillées

Les métriques d’utilisation sont des estimations en temps quasi-réel de votre utilisation de Datadog. Elles vous permettent de :

  • Représenter graphiquement l’estimation de votre utilisation.
  • Créer des monitors sur l’estimation de votre utilisation.
  • Obtenir des alertes en cas de pics ou de chutes d’utilisation.
  • Évaluer en temps quasi-réel l’impact potentiel des modifications de code sur votre utilisation.

Les métriques d’utilisation Log Management s’accompagnent de trois tags qui peuvent être utilisés pour une surveillance plus granulaire :

TagDescription
datadog_indexIndique la requête de routage qui associe un log à un index.
datadog_is_excludedIndique si un log correspond ou non à une requête d’exclusion.
serviceL’attribut de service de l’événement de log.

Un tag status supplémentaire est disponible pour la métrique datadog.estimated_usage.logs.ingested_events afin d’indiquer le statut du log (info, warning, etc.).

Pour aller plus loin

*Logging without Limits est une marque déposée de Datadog, Inc.