• /
  • 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

Créer une condition d'alerte NRQL

Nous vous recommandons de créer une alerte à l'aide d'une condition d'alerte NRQL . Ce document vous guidera dans le formatage et la configuration de votre condition d'alerte NRQL pour maximiser l'efficacité et réduire le bruit. Si vous venez de commencer avec New Relic, ou si vous n'avez pas encore créé de condition d'alerte, nous vous recommandons de commencer par la condition d'alerte.

Vous pouvez créer une condition d'alerte à partir de :

Vous pouvez également utiliser l'un de nos générateurs d'alertes :

  • Utilisez Write your own query pour créer des alertes à partir de zéro.
  • Use Guided modepour choisir parmi les options recommandées et faire créer votre requête NRQL pour vous.

Peu importe où vous commencez à créer une condition d'alerte, que ce soit via un graphique ou en écrivant votre propre requête, NRQL est la pierre angulaire sur laquelle vous pouvez définir votre signal et définir votre seuil.

Syntaxe d'alerte NRQL

Voici la syntaxe de base pour créer toutes les conditions d'alerte NRQL .

SELECT function(attribute)
FROM Event
WHERE attribute [comparison] [AND|OR ...]

Clause

Notes

SELECT function(attribute)

Required

Les fonctions prises en charge qui renvoient des nombres incluent :

  • apdex

  • average

  • count

  • latest

  • max

  • min

  • percentage

  • percentile

  • sum

  • uniqueCount

    Conseil

    Si vous utilisez l'agrégateur percentile dans une condition d'alerte à facettes avec plusieurs facettes, cela peut provoquer cette erreur :

    An error occurred while fetching chart data.

    Si vous voyez cette erreur, utilisez average à la place.

FROM data type

Required

Plusieurs types de données peuvent être ciblés.

Types de données pris en charge :

  • Événements
  • Metric (Les points de données BRUTES seront renvoyés)

WHERE attribute [comparison] [AND|OR ...]

Utilisez la clause WHERE pour spécifier une série d’une ou plusieurs conditions. Tous les opérateurs sont pris en charge. Il est utilisé pour filtrer les données renvoyées dans la requête.

FACET attribut

Incluez une clause FACET facultative dans votre syntaxe NRQL en fonction du type de seuil (statique ou anomalie).

Utilisez la clause FACET pour séparer vos résultats par attribut et alerter sur chaque attribut indépendamment. Aucune clause LIMIT n'est autorisée, mais toutes les requêtes recevront le nombre maximum de facettes possible.

La requête à facettes peut renvoyer un maximum de 5000 valeurs pour les conditions statiques et d'anomalie .

Important

Si la requête renvoie plus que le nombre maximum de valeurs, la condition d'alerte ne peut pas être créée. Si vous créez la condition et que la requête renvoie plus que ce nombre plus tard, l'alerte échouera. Modifiez votre requête afin qu’elle renvoie un nombre réduit de valeurs.

Reformatage NRQL incompatible

Certains éléments de NRQL utilisés dans les graphiques n'ont pas de sens dans le contexte des alertes en streaming. Voici une liste des éléments incompatibles les plus courants et des suggestions pour reformater une requête d'alerte NRQL afin d'obtenir le même effet.

Element

Notes

SINCE et UNTIL

Exemple:

SELECT percentile(largestContentfulPaint, 75)
FROM PageViewTiming
WHERE (appId = 837807) SINCE yesterday

Les conditions NRQL produisent un flux sans fin de résultats de requête fenêtrés, de sorte que les mots-clés SINCE et UNTIL permettant de limiter la requête à un point dans le temps ne sont pas compatibles. Pour plus de commodité, nous supprimons automatiquement SINCE et UNTIL d'une requête lors de la création d'une condition à partir du contexte d'un graphique.

TIMESERIES

Dans une requête NRQL , la clause TIMESERIES est utilisée pour renvoyer des données sous forme de série chronologique répartie sur une période donnée.

Pour les conditions NRQL et si l'agrégation de fenêtre glissante n'est pas utilisée, la propriété équivalente à TIMESERIES est la durée de la fenêtre d'agrégation de données. Si vous utilisez l’agrégation de fenêtre glissante, la propriété équivalente est la valeur de l’agrégation de fenêtre glissante.

PREDICT

Dans une requête NRQL , la clause PREDICT prévoit le comportement attendu d'une série chronologique sur une période future spécifiée.

Si vous configurez une condition NRQL avec un seuil statique, la propriété équivalente à la clause PREDICT est la bascule Predict future behavior sous la section Set condition thresholds .

histogram()

La fonction d'agrégation histogram() est utilisée pour générer un histogramme.

histogram() n'est pas compatible avec les alertes NRQL : les agrégations d'histogrammes ne peuvent pas être formatées sous forme de séries chronologiques. Pour créer une alerte à partir d'une partie d'un histogramme (par exemple, le 95e percentile), utilisez la fonction d'agrégation percentile() .

bytecountestimate(), cardinality()

Ces fonctions ne sont pas encore prises en charge pour les alertes NRQL.

Fonctions d'agrégation multiples

Chaque condition ne peut cibler qu'une seule valeur agrégée. Pour alerter sur plusieurs valeurs simultanément, vous devrez les décomposer en conditions individuelles au sein de la même politique.

Requête originale :

SELECT count(foo), average(bar), max(baz)
FROM Transaction

Décomposé:

SELECT count(foo) FROM Transaction
SELECT average(bar) FROM Transaction
SELECT max(baz) FROM Transaction

COMPARE WITH

La clause COMPARE WITH est utilisée pour comparer les valeurs de deux plages horaires différentes. Ce type de requête est incompatible avec les alertes NRQL. Nous recommandons d'utiliser une condition d'alerte d'anomalie pour détecter dynamiquement l'écart d'un signal particulier.

SLIDE BY

La clause SLIDE BY prend en charge une fonctionnalité connue sous le nom de fenêtres coulissantes. Avec les fenêtres coulissantes, SLIDE BY les données sont collectées dans des « fenêtres » de temps qui se chevauchent les unes avec les autres. Ces fenêtres peuvent aider à lisser les graphiques linéaires avec beaucoup de variations dans les cas où l'agrégat mobile (comme une moyenne mobile) est plus important que les agrégats provenant de fenêtres temporelles étroites.

Vous pouvez activer les fenêtres coulissantes dans l'UI. Lors de la création ou de la modification d'une condition, accédez à Adjust to signal behavior > Data aggregation settings > Use sliding window aggregation.

Par exemple pour créer une condition d’alerte équivalente à

SELECT count(*)
FROM Transaction
TIMESERIES 1 minute SLIDE BY 5 minutes

Vous utiliseriez une durée de fenêtre d’agrégation de données de 5 minutes, avec une agrégation de fenêtre glissante de 1 minute.

LIMIT

Dans la requête NRQL , la clause LIMIT est utilisée pour contrôler la quantité de données renvoyées par une requête, soit le nombre maximal de valeurs de facettes renvoyées par la requête FACET, soit le nombre maximal d'éléments renvoyés par la requête SELECT *.

LIMIT n'est pas compatible avec les alertes NRQL : l'évaluation est toujours effectuée sur l'ensemble des résultats.

Subqueries

Les sous-requêtes ne sont pas compatibles avec le streaming car l'exécution des sous-requêtes nécessite plusieurs passages dans les données.

Jointures de sous-requête

Les jointures de sous-requête ne sont pas compatibles avec les alertes en streaming, car l'exécution de sous-requête nécessite plusieurs passages dans les données.

Exemples de seuil d'alerte NRQL

Voici quelques cas d’utilisation courants pour les conditions NRQL. Ces requêtes fonctionneront pour les types de conditions statiques et d'anomalie.

Conditions NRQL et ordre des opérations de requête

Par défaut, la durée de la fenêtre d'agrégation est de 1 minute, mais vous pouvez modifier la fenêtre en fonction de vos besoins. Quelle que soit la fenêtre d'agrégation, New Relic collectera les données pour cette fenêtre à l'aide de la fonction dans la requête de la condition NRQL. La requête est analysée et exécutée par notre système dans l'ordre suivant :

  1. FROM clause. Quel type d’événement doit être saisi ?
  2. WHERE clause. Que peut-on filtrer ?
  3. SELECT clause. Quelles informations doivent être renvoyées à partir de l’ensemble de données désormais filtré ?

Exemple : valeur nulle renvoyée

Disons que c'est votre requête de condition d'alerte :

SELECT count(*)
FROM SyntheticCheck
WHERE monitorName = 'My Cool Monitor' AND result = 'FAILED'

S'il n'y a aucun échec pour la fenêtre d'agrégation :

  1. Le système exécutera la clause FROM en récupérant tous les SyntheticCheck événements sur votre compte.
  2. Ensuite, il exécutera la clause WHERE pour filtrer ces événements en recherchant uniquement ceux qui correspondent au nom du moniteur et au résultat spécifié.
  3. S'il reste des événements à analyser après avoir terminé les opérations FROM et WHERE , la clause SELECT sera exécutée. S'il n'y a aucun événement restant, la clause SELECT ne sera pas exécutée.

Cela signifie que les agrégateurs comme count() et uniqueCount() ne renverront jamais une valeur nulle. Lorsqu'il y a un compte de 0, la clause SELECT est ignorée et aucune donnée n'est renvoyée, ce qui donne une valeur de NULL.

Exemple : valeur zéro renvoyée

Si vous disposez d'une source de données fournissant des zéros numériques légitimes, la requête renverra des valeurs zéro et non des valeurs nulles.

Disons qu’il s’agit de votre requête de condition d’alerte et que MyCoolEvent est un attribut qui peut parfois renvoyer une valeur zéro.

SELECT average(MyCoolAttribute)
FROM MyCoolEvent

Si, dans la fenêtre d'agrégation en cours d'évaluation, il existe au moins une instance de MyCoolEvent et si la valeur moyenne de tous les attributs MyCoolAttribute de cette fenêtre est égale à zéro, alors une valeur 0 sera renvoyée. S'il n'y a aucun événement MyCoolEvent pendant cette minute, un NULL sera renvoyé en raison de l'ordre des opérations.

Exemple : valeur nulle ou valeur zéro renvoyée

Pour déterminer comment les valeurs nulles seront gérées, ajustez les paramètres de perte de signal et de remplissage d'espace dans l'UI de condition d'alerte.

Vous pouvez éviter les valeurs NULL avec un raccourci d'ordre des opérations de requête. Pour ce faire, utilisez une sous-clause filter , puis incluez tous les éléments de filtre dans cette sous-clause. Le corps principal de la requête doit inclure une clause WHERE qui définit au moins une entité afin que, pour toute fenêtre d'agrégation où le moniteur effectue une vérification, le signal soit lié à cette entité. La clause SELECT s'exécutera ensuite et appliquera les éléments de filtre aux données renvoyées par le corps principal de la requête, qui renverra une valeur de 0 si les éléments de filtre ne génèrent aucune donnée correspondante.

Voici un exemple pour alerter sur FAILED résultats :

SELECT filter(count(*), WHERE result = 'FAILED')
FROM SyntheticCheck
WHERE monitorName = 'My Favorite Monitor'

Dans cet exemple, une fenêtre avec un résultat réussi renverrait un 0, permettant au seuil de la condition de se résoudre de lui-même.

Important

Si aucun événement (ligne) n'est signalé, la perte de signal ne peut cannot être évitée même avec les modifications mentionnées ci-dessus. Nous vous recommandons d'établir ou de maintenir un Lost Signal Threshold pour déclencher un incident si l'événement cesse complètement d'être signalé.

Pour plus d'informations, consultez notre article de blog sur le dépannage des valeurs zéro et nulles.

Alertes NRQL d'agrégation imbriquée

Les requêtes d'agrégation imbriquées sont un moyen puissant d'interroger vos données. Cependant, ils comportent quelques restrictions qu’il est important de noter.

Conseils de création de conditions NRQL

Voici quelques conseils pour créer et utiliser une condition NRQL :

Sujet

Conseils

Types de conditions

Les types de conditions NRQL incluent les conditions statiques et anormales.

Créer une description

Pour les conditions NRQL, vous pouvez créer une description personnalisée à ajouter à chaque incident. Les descriptions peuvent être améliorées avec une substitution de variables basée sur les métadonnées de l'incident spécifique.

Résultats de la requête

La requête doit renvoyer un nombre. La condition évalue le nombre renvoyé par rapport au seuil que vous avez défini.

Période de temps

Les conditions NRQL évaluent les données en fonction de la manière dont elles sont agrégées, en utilisant des fenêtres d'agrégation de 30 secondes à 120 minutes, par incréments de 15 secondes. Pour de meilleurs résultats, nous vous recommandons d'utiliser les méthodes d'agrégation de flux d'événements ou de minuterie d'événements.

Pour la méthode d'agrégation de cadence, la clause implicite SINCE ... UNTIL spécifiant la minute à évaluer est contrôlée par votre paramètre de délai/minuterie . Étant donné que les données très récentes peuvent être incomplètes, vous souhaiterez peut-être interroger les données datant d'il y a 3 minutes ou plus, en particulier pour :

  • Application qui s'exécute sur plusieurs hôtes.

  • SyntheticCheck données : les délais d'attente peuvent prendre 3 minutes, donc 5 minutes ou plus sont recommandés.

    De plus, si une requête génère des données intermittentes, envisagez d’utiliser l’option de signal avancé slide by .

Seuil de détection de perte de signal

Vous pouvez utiliser la détection de perte de signal pour alerter sur le moment où vos données (un signal de télémétrie) doivent être considérées comme perdues. Une perte de signal peut indiquer qu'un service ou une entité n'est plus en ligne ou qu'une tâche périodique n'a pas pu être exécutée. Vous pouvez également l'utiliser pour vous assurer que les incidents liés aux données sporadiques, telles que le nombre d'erreurs, sont fermés lorsqu'aucun signal n'arrive.

Paramètres avancés du signal

Ces paramètres vous offrent des options pour mieux gérer les signaux de données en continu qui peuvent parfois manquer. Ces paramètres incluent la durée de la fenêtre d'agrégation, le délai/minuterie et une option permettant de combler les lacunes de données. Pour en savoir plus sur leur utilisation, consultez Paramètres de signal avancés.

Paramètres des conditions

Utilisez le Condition settings pour :

  • Créez un nom de condition concis et descriptif.
  • Fournissez une description incident personnalisée pour la condition sur la page Add details qui sera incluse dans l'incident et la notification.
  • Ajoutez l'URL runbook pour inclure les procédures de votre organisation pour la gestion des incidents. Vous pouvez également ajouter ces informations à la description de l’incident personnalisé.

Limites des conditions

Voir les valeurs maximales.

état de santé

Pour qu'un NRQL affichage condition d'alerte état de santé fonctionne correctement, la requête doit être limitée à une seule entité. Pour ce faire, utilisez soit une clause WHERE (par exemple, WHERE appName = 'MyFavoriteApp'), soit une clause FACET pour limiter chaque signal à une seule entité (par exemple, FACET hostname ou FACET appName).

Exemples

Pour plus d'informations, voir :

Gestion des balises sur les conditions

Lorsque vous modifiez une condition NRQL existante, vous avez la possibilité d'ajouter ou de supprimer une balise associée à l'entité de condition. Pour ce faire, cliquez sur le bouton Manage tags sous le nom de la condition. Dans le menu qui apparaît, ajoutez ou supprimez une tag.

Les modifications de condition peuvent réinitialiser l'évaluation de la condition

Lorsque vous modifiez la condition d'alerte NRQL de certaines manières spécifiques (détaillées ci-dessous), leurs évaluations sont réinitialisées, ce qui signifie que toute évaluation jusqu'à ce point est perdue et l'évaluation recommence à partir de ce point. Les deux façons dont cela vous affectera sont :

  • Pour le seuil « pendant au moins x minutes » : la fenêtre d'évaluation ayant été réinitialisée, il y aura un délai d'au moins x minutes avant qu'un incident puisse être signalé.
  • Pour les conditions d'anomalie: la condition recommence et tout apprentissage d'anomalie est perdu.

Les actions suivantes entraînent une réinitialisation de l'évaluation des conditions NRQL :

  • Modification de la requête
  • Modification de la fenêtre d'agrégation, de la méthode d'agrégation ou du paramètre de délai/minuterie d'agrégation
  • Modification du paramètre « Fermer l'incident en cas de perte de signal »
  • Modification des paramètres de remplissage des espaces
  • Modification de la direction de l'anomalie (le cas échéant) - plus haut, plus bas ou plus haut/plus bas
  • Modifier la valeur de seuil, la fenêtre de seuil ou l'opérateur de seuil
  • Modifier l'intervalle de défilement (uniquement sur les conditions d'agrégation des fenêtres glissantes )

Les actions suivantes (ainsi que toutes les autres actions non couvertes dans la liste ci-dessus) ne réinitialiseront pas l'évaluation :

  • Modification de la fenêtre temporelle de perte de signal (durée d'expiration)
  • Modification de la fonction de temps (passage de « pendant au moins » à « au moins une fois dans » ou vice-versa)
  • Activation/désactivation du paramètre « Ouvrir un incident en cas de perte de signal »

Types de conditions d'alerte

Lorsque vous créez une alerte NRQL, vous pouvez choisir parmi différents types de conditions :

Types de conditions d'alerte NRQL

Description

Statique

Il s’agit du type de condition NRQL le plus simple. Il vous permet de créer une condition basée sur une requête NRQL qui renvoie une valeur numérique.

Facultatif : inclure une clause FACET .

anomalie (anomalie dynamique)

Utilise une condition d’auto-ajustement basée sur le comportement passé des valeurs du moniteur. Utilise le même formulaire de requête NRQL que le type statique, y compris la clause FACET facultative.

Définir le seuil de perte de signal

Important

La perte de fonctionnalité du signal nécessite qu'un signal soit présent avant de pouvoir détecter que le signal est perdu. Si vous activez une condition alors qu'un signal n'est pas présent, aucune perte de signal ne sera détectée et la fonctionnalité de perte de signal ne s'activera pas.

La perte de signal se produit lorsqu'aucune donnée ne correspond à la condition NRQL sur une période de temps spécifique. Vous pouvez définir la durée de votre seuil de perte de signal ainsi que ce qui se passe lorsque le seuil est dépassé.

screenshot of signal loss options

Allez à one.newrelic.com > All capabilities > Alerts > Alert conditions (Policies), puis + New alert condition. La perte de signal n'est disponible que pour les conditions NRQL.

Vous pouvez également gérer ces paramètres à l'aide de l'API GraphQL (recommandé) ou de l'API REST. Cliquez ici pour des exemples spécifiques d'API GraphQL.

Loss of signal settings:

Les paramètres de perte de signal incluent une durée et quelques actions.

  • Signal loss expiration time

    • Étiquette UI : Signal is lost after:
    • Nœud GraphQL : expiration.expirationDuration
    • La durée d’expiration est un minuteur qui démarre et se réinitialise lorsque nous recevons un point de données dans le pipeline d’alertes en streaming. Si nous ne recevons pas un autre point de données avant l’expiration de votre « délai d’expiration », nous considérons que ce signal est perdu. Cela peut être dû au fait qu'aucune donnée n'est envoyée à New Relic ou que la clause WHERE de votre requête NRQL filtre ces données avant qu'elles ne soient transmises au pipeline d'alertes. Notez que lorsque vous avez une requête à facettes, chaque facette est un signal. Ainsi, si l’un de ces signaux se termine pendant la durée spécifiée, cela sera considéré comme une perte de signal.
    • La perte du temps d'expiration du signal est indépendante de la durée du seuil et se déclenche dès que le temporisateur expire.
    • La durée d'expiration maximale est de 48 heures. Cela est utile lors de monitoring de l’exécution de tâches peu fréquentes. Le minimum est de 30 secondes, mais nous recommandons d'utiliser au moins 3 à 5 minutes.
  • Loss of signal actions

    Une fois qu'un signal est considéré comme perdu, vous avez plusieurs options :

    • Fermer tous les incidents ouverts en cours : cela ferme tous les incidents ouverts liés à un signal spécifique. Cela ne fermera pas nécessairement tous les incidents pour une condition. Si vous alertez sur un service éphémère ou sur un signal sporadique, vous souhaiterez choisir cette action pour garantir que les incidents soient correctement clôturés. Le nom du nœud GraphQL pour ceci est closeViolationsOnExpiration.
    • Ouvrir un nouvel incident : cela ouvrira un nouvel incident lorsque le signal sera considéré comme perdu. Ces incidents indiqueront qu'ils sont dus à une perte de signal. En fonction de vos préférences d’incident, cela devrait déclencher une notification. Le nom du nœud graphQL pour ceci est openViolationOnExpiration.
    • Lorsque vous activez les deux actions ci-dessus, nous fermerons d'abord tous les incidents ouverts, puis ouvrirons un nouvel incident pour perte de signal.
    • N'ouvrez pas l'incident « signal perdu » à la fin prévue. Lorsqu'un signal est censé se terminer, vous pouvez choisir de ne pas ouvrir un nouvel incident. Ceci est utile lorsque vous savez qu'un signal sera perdu à un certain moment et que vous ne souhaitez pas ouvrir un nouvel incident pour cette perte de signal. Le nom du nœud GraphQL pour ceci est ignoreOnExpectedTermination.

Important

Pour éviter qu'un incident de perte de signal ne s'ouvre lorsque Do not open "lost signal" incident on expected termination, vous devez ajouter la tag termination: expected à l'entité. Cette tag nous indique que nous nous attendions à ce que le signal se termine. Découvrez comment ajouter la tag directement à l'entité. Notez que la tag hostStatus: shutdown empêchera également l'ouverture d'un incident de « perte de signal ». Pour plus d'informations, voir Créer une condition « hôte ne signalant pas ».

Pour créer une alerte NRQL configurée avec détection de perte de signal dans l'UI:

  1. Suivez les instructions pour créer une condition d’alerte NRQL.
  2. À l’ étapeSet thresholds , vous trouverez l’option Add lost signal threshold. Cliquez sur ce bouton.
  3. Définissez la durée d’expiration du signal en minutes ou en secondes dans le champ Consider the signal lost after .
  4. Choisissez ce que vous voulez qu'il se passe lorsque le signal est perdu. Vous pouvez cocher une ou toutes les options suivantes : Close all current open incidents, Open new "lost signal" incident, Do not open "lost signal" incident on expected termination. Ils contrôlent la manière dont l'incident de perte de signal sera traité pour la condition.
  5. Vous pouvez éventuellement ajouter ou supprimer un seuil numérique statique/anomalie. Une condition qui n'a qu'un seuil de perte de signal et aucun seuil numérique statique/anomalie est valide et est considérée comme une condition de perte de signal « autonome ».

Prudence

Lors de la création d'une condition de perte de signal autonome, tenez compte de la requête utilisée. L'utilisation de requêtes complexes peut coûter plus cher que ce qui est nécessaire pour monitorer un signal.

  1. Continuez à suivre les étapes pour sauvegarder votre état.
  2. Si vous avez sélectionné Do not open "lost signal" incident on expected termination, vous devez ajouter la tag termination: expected à l'entité pour empêcher l'ouverture d'un incident de perte de signal. Découvrez comment ajouter la tag directement à l'entité.

Conseil

Vous vous demandez peut-être pourquoi vous voudriez avoir à la fois Open new "lost signal" incident et Do not open "lost signal" incident on expected termination définis sur vrai. Pensez-y comme ceci : vous souhaitez recevoir une notification lorsque vous perdez un signal. Sauf que vous ne voulez pas recevoir de notification la seule fois où vous savez que le signal s'arrêtera parce que vous l'avez programmé. Dans ce cas, vous définiriez les deux sur vrai, et lorsque vous vous attendez à ce que le signal soit perdu, vous ajouteriez la tag termination: expected à l'entité concernée.

Incident ouvert en raison d'une perte de signal fermé lorsque :

  • le signal revient. Un incident de perte de signal nouvellement ouvert sera fermé immédiatement lorsque de nouvelles données seront évaluées.
  • l'état auquel ils appartiennent expire. Par défaut, les conditions expirent après 3 jours.
  • vous fermez manuellement l'incident avec l'option Close all current open incidents .

Conseil

La détection de perte de signal ne fonctionne pas sur les requêtes NRQL qui utilisent une agrégation imbriquée ou une sous-requête.

Paramètres avancés du signal

Screenshot showing advanced signal settings

Lors de la création d'une condition d'alerte NRQL , utilisez les paramètres de signal avancés pour contrôler les données d'alerte en streaming et éviter les fausses alarmes.

Lors de la création d'une condition NRQL, il existe plusieurs paramètres de signal avancés:

  • Durée de la fenêtre d'agrégation
  • Agrégation de fenêtres coulissantes
  • Méthode de diffusion en continu
  • Retard/minuterie
  • Combler les lacunes en matière de données
  • Retard d'évaluation

Pour lire une explication de ce que sont ces paramètres et de la manière dont ils sont liés les uns aux autres, consultez Concepts des alertes en streaming. Vous trouverez ci-dessous des instructions et des conseils sur la façon de les configurer.

Durée de la fenêtre d'agrégation

Vous pouvez définir la durée de la fenêtre d'agrégation pour choisir la durée pendant laquelle les données sont accumulées dans une fenêtre de temps de streaming avant d'être agrégées. Vous pouvez le régler entre 30 secondes et 120 minutes. La valeur par défaut est d'une minute.

Agrégation de fenêtres coulissantes

Vous pouvez utiliser des fenêtres coulissantes pour créer des graphiques plus fluides. Cela se fait en créant des fenêtres de données qui se chevauchent.

Apprenez à configurer des fenêtres coulissantes dans cette courte vidéo (2:30 minutes) :

Une fois activé, définissez le « diaporama par intervalle » pour contrôler le temps de chevauchement de vos fenêtres agrégées. L'intervalle doit être plus court que la fenêtre d'agrégation tout en étant divisé uniformément dans celle-ci.

Important

Immédiatement après avoir créé une nouvelle condition d'alerte de fenêtre glissante ou effectué une action pouvant entraîner une réinitialisation de l'évaluation, votre condition aura besoin de temps pour constituer un « tampon agrégé » pendant la durée de la première fenêtre d'agrégation. Durant cette période, aucun incident ne se produira. Une fois cette fenêtre d'agrégation unique passée, un « tampon » complet aura été construit et la condition fonctionnera normalement.

Méthode de diffusion en continu

Choisissez entre trois méthodes d’agrégation de streaming pour obtenir les meilleurs résultats d’évaluation pour vos conditions.

Retard/minuterie

Vous pouvez ajuster le délai/la minuterie pour coordonner notre algorithme d'alerte en streaming avec le comportement de vos données. Si vos données sont rares ou incohérentes, vous pouvez utiliser la méthode d’agrégation du minuteur d’événement.

Pour la méthode de cadence, la latence totale prise en charge est la somme de la durée de la fenêtre d'agrégation et du délai.

Si le type de données provient d'un de APM langage agent et est agrégé à partir de plusieurs instances d'application (par exemple,,, Transaction TransactionErroretc.), nous vous recommandons d'utiliser la méthode de flux d'événement avec les paramètres par défaut.

Important

Lors de la création de conditions NRQL pour les données collectées à partir d'une intégration d'infrastructure cloud telle AWS CloudWatch ou Azure, nous vous recommandons d'utiliser la méthode événement timer.

Combler les lacunes en matière de données

Le remplissage des lacunes vous permet de personnaliser les valeurs à utiliser lorsque vos signaux ne contiennent aucune donnée. Vous pouvez combler les lacunes dans vos flux de données avec l’un de ces paramètres :

  • None: (Par défaut) Choisissez cette option si vous ne souhaitez effectuer aucune action sur les fenêtres d'agrégation vides. Lors de l'évaluation, une fenêtre d'agrégation vide réinitialisera le minuteur de durée du seuil. Par exemple, si une condition indique que toutes les fenêtres d'agrégation doivent avoir des points de données au-dessus du seuil pendant 5 minutes et qu'une des 5 fenêtres d'agrégation est vide, alors la condition ne sera pas un incident.
  • Custom static value: Choisissez cette option si vous souhaitez insérer une valeur statique personnalisée dans les fenêtres d’agrégation vides avant qu’elles ne soient évaluées. Cette option dispose d'un paramètre supplémentaire obligatoire de fillValue (comme nommé dans l'API) qui spécifie quelle valeur statique doit être utilisée. La valeur par défaut est 0.
  • Last known value:Cette option insère la dernière valeur vue avant que l'évaluation ne se produise. Nous maintenons l'état de la dernière valeur vue pendant un minimum de 2 heures. Si la durée du seuil configurée est supérieure à 2 heures, cette valeur est conservée pendant cette durée.

Conseil

Le système d’alertes comble les lacunes dans les signaux signalés activement. Cet historique de signal est abandonné après une période d'inactivité et, pour combler les lacunes, les points de données reçus après cette période d'inactivité sont traités comme de nouveaux signaux. La durée d'inactivité est soit de 2 heures, soit de la durée du seuil configuré, selon la durée la plus longue.

Pour en savoir plus sur la perte de signal, le remplissage des espaces et comment demander l'accès à ces fonctionnalités, consultez cette publication du forum d'assistance.

Options de modification des paramètres d’écart de données :

  • Dans l’ des NRQL conditions UI, accédez à Condition settings > Advanced signal settings > fill data gaps with et choisissez une option.
  • Si vous utilisez notre API Nerdgraph (préféré), ce nœud est situé à : actor : account : alerts : nrqlCondition : signal : fillOption | fillValue
  • NerdGraph est notre recommandée API pour cela, mais si vous utilisez notre API REST, vous pouvez trouver ce paramètre dans API l'explorateur REST sous la "signal" section de l'des NRQL conditions d'alerte .API

Retard d'évaluation

Vous pouvez activer l'indicateur Use evaluation delay et définir jusqu'à 120 minutes pour retarder l'évaluation des signaux entrants.

Lorsqu’une nouvelle entité est déployée pour la première fois, l’utilisation des ressources de l’entité est souvent inhabituellement élevée. Dans les environnements de mise à l'échelle automatique, cela peut facilement créer de nombreuses fausses alertes. En retardant le démarrage de la détection des alertes sur les signaux émis par la nouvelle entité, vous pouvez réduire considérablement le nombre de fausses alarmes associées au déploiement dans des environnements orchestrés ou autoscale.

Options pour activer le délai d’évaluation :

  • Dans l’ des NRQL conditions UI, accédez Adjust to signal behavior > Use evaluation delay à.
  • Si vous utilisez notre API Nerdgraph, ce nœud est situé à : actor : account : alerts : nrqlCondition : signal : evaluationDelay

Conditions HNR NRQL en mode guidé

Le mode guidé des conditions NRQL offre une expérience organisée pour la création de conditions NRQL d'infrastructure « hôte ne signalant pas » (HNR). Il s'agit de l'alternative préférée à la création de conditions d'infrastructure « hôte sans rapport ».

Droits d'auteur © 2025 New Relic Inc.

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