• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Cette traduction automatique est fournie pour votre commodité.

En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.

Créer un problème

Prise en charge des fonctions NRQL dans les règles de gateway

Ce document décrit les fonctions NRQL prises en charge dans les règles de passerelle Contrôle de pipeline. Utilisez ces fonctions pour créer des règles plus puissantes et plus précises pour filtrer et gérer vos données.

Fonction

Description

Exemple de requête NRQL

aparse()

Extrait une valeur d'une chaîne en fonction d'un modèle spécifié.

DELETE FROM Log WHERE aparse(message, 'Error: %') = 'timeout'

dimensions()

Filtre les données en fonction des facettes ou des dimensions associées à vos métriques/événement.

DELETE FROM Log WHERE dimensions() LIKE '%collectd%'

floor()

Renvoie le plus grand entier inférieur ou égal au nombre spécifié.

DELETE FROM Metric WHERE floor(duration) > 5

getField()

Extrait un champ spécifique d'une structure de données complexe (par exemple, un objet JSON).

DELETE FROM Metric WHERE getField(cpu_usage, percent) > 90

hourOf()

Extrait le composant horaire d'un horodatage.

DELETE FROM Log WHERE hourOf(timestamp) IN (2, 3, 4)

mod()

Renvoie le reste d'une opération de division.

DELETE FROM Log WHERE mod(timestamp/1000,20) != 1

numeric()

Convertit une valeur de chaîne en un type numérique.

DELETE FROM Log WHERE numeric(responseTime) > 1000

round()

Arrondit un nombre à l'entier le plus proche ou à un nombre spécifié de décimales.

DELETE FROM Metric WHERE round(latency, 2) > 0.5

string()

Convertit une valeur numérique ou autre en un type de chaîne.

DELETE FROM Log WHERE string(statusCode) = '404'

substring()

Extrait une partie spécifiée d'une chaîne.

DELETE FROM Log WHERE substring(transactionId, 1, 3) = 'tmp'

weekdayOf()

Extrait le jour de la semaine d'un horodatage (par exemple, « Lundi », « Dimanche »).

DELETE FROM Metric WHERE weekdayOf(timestamp) IN ('Saturday', 'Sunday')

Exemples de fonctions NRQL multiples dans les règles de gateway

Ces exemples montrent comment vous pouvez combiner plusieurs fonctions et les utiliser dans des scénarios plus complexes pour obtenir un filtrage et une suppression précis des données.

  • Cette règle supprime les données des conteneurs qui sont sortis, mais conserve les enregistrements des conteneurs qui sont sortis au cours des 10 dernières minutes :
DELETE FROM ContainerSample WHERE state = 'exited' AND status LIKE '%Exited%' AND NOT (status LIKE '%second%' AND numeric(aparse(status,'%Exited (%) * seconds ago%')) < 10) AND NOT (status LIKE '%About a minute ago%' OR status LIKE '%minute%' AND numeric(aparse(status,'%Exited (%) * minutes ago%')) < 10)
  • Cette règle supprime les logs associés à des modèles de logs spécifiques (collectd) et qui ne sont pas des types d'événements personnalisés :
DELETE FROM Log, LogExtendedRecord WHERE dimensions() LIKE '%collectd%' AND newrelic.logs.customEventType IS NULL
  • Cette règle supprime un type spécifique de log d'erreurs, mais les échantillonne en conservant uniquement les enregistrements dont l'horodatage est un multiple de 101 :
DELETE FROM Log WHERE message LIKE '%lib/ladon/middleware/caching.rb:49 run> terminated with exception%' AND floor(timestamp/101) = (timestamp/101) AND newrelic.logs.customEventType IS NULL

Ces nouvelles fonctions étendent considérablement les capacités de votre requête NRQL lorsque vous travaillez avec le gateway de Pipeline Control, permettant une analyse et une gestion des données plus précises.

Droits d'auteur © 2025 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.