Utilisez le service API métriques de New Relic pour définir des règles de création de métriques à partir de vos autres types de données, tels que des événements, des logs ou des étendues. Recommandation : avant de commencer, consultez nos exigences et conseils pour créer des règles.
Créer une règle métrique
Pour créer une règle permettant de créer des métriques à partir d'un événement, d'un log ou d'étendues :
- Construisez la règle métriques en utilisant NRQL.
- Construisez une requête API NerdGraph (format GraphQL) qui contient votre règle NRQL.
- Créez la métrique en effectuant la demande d'API.
Une fois qu'une métrique est créée, vous pouvez l'interroger et la représenter graphiquement à l'aide de NRQL.
Étape 1. Créer une règle de requête NRQL
La partie la plus importante de la création d'une règle métrique consiste à construire la requête NRQL qui définit la métrique de vos données à partir d'un événement, d'un log ou de plages. Vous pouvez créer jusqu'à 10 métriques avec une seule requête NRQL en suivant cette procédure :
À l’aide de l’interface NRQL de New Relic, construisez une requête pour la métrique que vous souhaitez créer. Par exemple:
FROM ProcessSample SELECT average(ioTotalReadBytes)WHERE nr.entityType = 'HOST'Important
Les règles d'événement à métriques ne prennent pas en charge la clause
WITH ... AS
dans la requête NRQL .Modifiez la requête pour utiliser l'un des trois types de métriques disponibles :
summary
: À utiliser si la fonction de la requête estmin
,max
,sum
,count
ouaverage
.uniqueCount
: À utiliser si la fonction de la requête estuniqueCount
.distribution
: À utiliser si la fonction de la requête estpercentile
ouhistogram
.Cet exemple de requête utilise
average
, utilisez doncsummary
:FROM ProcessSample SELECT summary(ioTotalReadBytes)WHERE nr.entityType = 'HOST'Cet exemple de requête utilise
count
sur un champ non numérique :FROM ProcessSample SELECT count(hostname)WHERE hostname LIKE '%prod%'Pour
summary
sur un champ non numérique, utilisezsummary(1)
:FROM ProcessSample SELECT summary(1)WHERE hostname LIKE '%prod%'Conseil
Pour des informations plus détaillées sur l'utilisation de ces types de métriques dans les règles, voir Création de règles métriques : exigences et conseils.
Décidez de l'attribut que vous souhaitez attacher à la métrique, en respectant les limites de cardinalité des combinaisons uniques nom-métrique/valeur-attribut.
Recommandation : exécutez une requête distincte pour garantir que la cardinalité maximale ne dépasse pas 50 000 pour une fenêtre de 30 secondes. Par exemple, la requête suivante trouvera la cardinalité maximale rencontrée sur une période de 30 secondes au cours des 3 dernières heures pour l'événement
ProcessSample
en incluant les attributsawsRegion
,awsAvailabilityZone
etcommandName
:FROM (FROM ProcessSampleSELECT rate(uniqueCount(awsRegion, awsAvailabilityZone, commandName), 30 seconds) AS 'cardinalityRate'WHERE nr.entityType = 'HOST' TIMESERIES 30 seconds) SELECT max(cardinalityRate) AS 'maxCardinalityRate' SINCE 3 hours AGOPour pouvoir agréger et filtrer vos métriques, ajoutez l'attribut que vous souhaitez attacher à la métrique à l'aide de la clause
FACET
. Par exemple:FROM ProcessSampleSELECT summary(ioTotalReadBytes) WHERE nr.entityType = 'HOST'FACET awsRegion, awsAvailabilityZone, commandNameDéfinissez le nom de la métrique à l’aide de la fonction
AS
. Par exemple:FROM ProcessSample SELECT summary(ioTotalReadBytes) AS 'io.totalread.bytes'WHERE nr.entityType = 'HOST' FACET awsRegion, awsAvailabilityZone, commandName
Une fois votre règle NRQL terminée, utilisez-la pour créer la demande d'API.
Étape 2. Créer une demande d'API
Après avoir créé la règle NRQL pour convertir les données d’événement, de log ou de spans en métriques, continuez à créer la demande d’API. Vous pouvez utiliser notre outil API NerdGraph pour explorer la structure des données et pour construire et faire votre demande.
Pour vérifier que la règle a été créée correctement, vous pouvez exécuter une requête pour renvoyer cette règle en utilisant son ID. Pour obtenir des conseils sur l'interrogation des métriques que vous avez créées, consultez requête et tracez vos métriques.
Étape 3. Créer une règle métrique avec une requête API
Lorsque votre demande d'API est prête, vous pouvez utiliser l'API NerdGraph pour effectuer la demande, ce qui créera les métriques.
Interrogez et tracez vos métriques
Après avoir créé une règle métrique pour convertir les données de votre événement, de votre log ou de vos étendues, vous pouvez afficher les nouvelles données métriques dans l'UI de New Relic. Pour visualiser vos données :
Accédez à l'interface de requête NRQL de New Relic.
Exécutez la requête suivante pour voir le nom de toutes vos métriques :
SELECT uniques(metricName) FROM MetricChoisissez la métrique qui vous intéresse, puis exécutez la requête suivante pour voir l'attribut disponible :
SELECT * FROM Metric WHERE metricName = 'yourMetric'Si vous ne voyez pas les données attendues, suivez les procédures de dépannage .
Les fonctions d'agrégation NRQL disponibles dépendent du type de métrique que vous avez créé. Voici quelques exemples.
Dépannage
Si votre appel NerdGraph n'est pas construit correctement, vous pouvez recevoir un message comme celui-ci :
Cannot parse the unexpected character "\u201C”
Vérifiez que les guillemets dans l'appel NerdGraph ne sont pas des guillemets intelligents (guillemets bouclés). Notre API NerdGraph accepte uniquement les guillemets droits.