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

Rapport métriques via l'API métrique

Utilisez l' API métrique pour envoyer des métriques personnalisées à la plateforme New Relic. Ce document comprend un démarrage rapide pour envoyer vos premières métriques personnalisées, ainsi que des informations détaillées sur la façon de formater et d'envoyer vos données métriques.

Démarrage rapide : Envoyer des données métriques

Nous rapportons les types métriques count, gauge et summary. Pour plus d'informations sur les métriques, consultez notre documentation.

Soumettez les données métriques à New Relic via une requête HTTP POST. Composez chaque requête avec un ou plusieurs points de données métriques, constitués d'un name, d'un timestamp et d'un value pour la métrique.

Suivez cet exemple pour envoyer vos premiers points de données métriques à New Relic :

  1. Obtenez le pour le compte auquel vous souhaitez signaler des données.

  2. Insérez la clé de licence dans le JSON suivant, puis envoyez le JSON à notre point de terminaison.

  3. Pour timestamp remplacez INSERT_CURRENT_TIMESTAMP par un horodatage d'époque valide. Cet exemple crée un seul point de données métrique pour une métrique nommée memory.heap, mais vous pouvez créer des points de données ou d'attribut supplémentaires en spécifiant des types de métrique ou en ajoutant des blocs common facultatifs.

    bash
    $
    curl -vvv -k -H "Content-Type: application/json" \
    >
    -H "Api-Key: NEW_RELIC_LICENSE_KEY" \
    >
    -X POST https://metric-api.newrelic.com/metric/v1 \
    >
    --data '[{
    $
    "metrics":[{
    $
    "name":"memory.heap",
    $
    "type":"gauge",
    $
    "value":2.3,
    $
    "timestamp":INSERT_CURRENT_TIMESTAMP,
    $
    "attributes":{"host.name":"dev.server.com"}
    $
    }]
    $
    }]'

La métrique devrait être disponible dans New Relic dans quelques secondes. Vous pouvez interroger les données de n’importe quelle interface NRQL à l’aide de cette requête :

FROM Metric SELECT max(memory.heap) TIMESERIES

Pour en savoir plus sur l'emplacement où les données s'affichent, consultez Rechercher les données de l'API métrique.

URL du point de terminaison

Utilisez un HTTP POST lors de l'envoi de données métriques aux points de terminaison d'API métrique :

https://metric-api.newrelic.com/metric/v1

Conseil

Si votre organisation héberge des données dans un data center de l'UE, assurez-vous d'utiliser le point de terminaison de la région UE. Pour cette API, le point de terminaison UE est :

https://metric-api.eu.newrelic.com/metric/v1

En-têtes de requête HTTP

Incluez les en-têtes de requête HTTP suivants avec la requête POST. Vous pouvez envoyer certains paramètres sous forme de paramètres de requête au lieu d'en-têtes de requête.

En-tête

Envoyer comme paramètre de requête ?

Détails

Content-Type

Non

Required. Doit être application/json.

Content-Length

Non

Required (usually set automatically by the HTTP client). La longueur du corps de la requête en octets (octets de 8 bits), sauf si elle est envoyée avec un codage fragmenté. Cet en-tête est généralement défini par défaut par le client HTTP sous-jacent qui envoie les données et, dans la plupart des cas, ne devrait pas nécessiter d'effort supplémentaire de la part de l'utilisateur final.

Api-Key

Oui

Required. Un pour le compte auquel vous souhaitez signaler des données. Si cela est fourni à la fois comme en-tête et comme paramètre de requête, les valeurs doivent correspondre.

Content-Encoding

Non

Required if GZIP. La valeur doit être GZIP ou Identity. Si aucune valeur n'est présente, alors Identity est supposé.

x-request-id

Non

Optional - Reserved for future use. La valeur doit être un UUID4 valide. La valeur doit être unique pour chaque demande.

Corps de la requête HTTP

Le corps de la requête HTTP POST doit être au format JSON. Ce qui suit décrit les exigences et les recommandations pour la charge utile JSON.

La charge utile doit être codée comme UTF-8.

Structure

La charge utile JSON utilise cette structure :

  • La charge JSON est un ensemble de cartes.
  • Chaque carte doit contenir une clé metrics dont la valeur est un éventail contenant un ou plusieurs points de données métriques.
  • Un point de données métrique est identifié par un name, value et timestamp ainsi qu'un ensemble facultatif d'attributs.

Paires de clés de valeur requises

Chaque carte de points de données métriques de l'éventail metrics utilise la structure de valeur clé suivante :

Clé

Description

name

chaîne

Required. Le nom de la métrique. La valeur doit être inférieure à 255 caractères.

value

numéro ou carte

Required. La valeur varie en fonction du type de métrique. Pour gauge et count la valeur doit être un nombre unique. Pour summary, la valeur doit être une carte avec des paires valeur-clé spécifiant le nombre, la somme, le minimum et le maximum.

timestamp

long

Required. L'heure de début de la métrique en heure Unix. La valeur par défaut est le fuseau horaire UTC. Ce champ prend également en charge les secondes, les microsecondes et les nanosecondes. Cependant, les données seront converties en millisecondes pour le stockage et la requête. Les métriques sont supprimées si leur horodatage remonte à plus de 48 heures dans le passé ou à plus de 24 heures dans le futur à partir du moment où elles sont signalées.

interval.ms

positif long

Required for count and summary metric types. La durée de la fenêtre temporelle.

type

Recommandé. Cela doit être l’un des types métriques pris en charge. Si vous ne spécifiez pas de type, la valeur par défaut sera gauge.

attributes

chaînes, nombres JSON ou booléens

Recommandé. Une carte des paires de valeurs clés associées à cette métrique spécifique. Les valeurs peuvent être des chaînes, des nombres JSON ou des booléens. Les clés sont sensibles à la casse et doivent comporter moins de 255 caractères.

Partager l'attribut sur plusieurs métriques avec common

Si vous souhaitez inclure un ensemble d'attributs sur plusieurs métriques (et ne pas ajouter le même attribut pour chaque métrique), vous pouvez utiliser le bloc common . Il s'agit d'une carte facultative qui spécifie les informations qui s'appliquent à tous les points de données métriques associés. Les valeurs de la section commune seront remplacées si la même clé existe sur un point de données métrique.

Le bloc peut inclure :

Attribut

Description

timestamp

long

L'heure de début de la métrique en heure Unix. La valeur par défaut est l'heure actuelle dans le fuseau horaire UTC. Ce champ prend également en charge les secondes, les microsecondes et les nanosecondes. Cependant, les données seront converties en millisecondes pour le stockage et l'interrogation ultérieure.

interval.ms

positif long

Required for count and summary.La durée de la fenêtre temporelle.

attributes

chaînes, nombres JSON ou booléens

Une carte des paires de valeurs clés associées à cette métrique spécifique. Les valeurs peuvent être des chaînes, des nombres JSON ou des booléens.

Validation des réponses et codes d'état

L'API métrique renvoie un code de réponse 202 pour requests réussies. Lorsque vos données sont acceptées, un code de réponse HTTP 202 est renvoyé avec une structure de réponse comme celle-ci :

HTTP/1.1 202 Accepted
Content-Type: application/json; charset=UTF-8
Content-Length: 52
Access-Control-Allow-Methods: GET, POST, PUT, HEAD, OPTIONS
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
Connection: keep-alive
{"requestId":"f0e7bfff-001a-b000-0000-01682bcf4565"}

Données manquantes avec 202

Un code 202 indique que l'API a bien reçu vos données et que celles-ci ont passé les contrôles de validation de base. Normalement, vos données seront disponibles pour interrogation en quelques secondes. Cependant, New Relic exécute une validation supplémentaire de manière asynchrone après réception de vos données. Si vous recevez une réponse 202 mais que vous ne trouvez pas votre métrique, cela indique que New Relic a trouvé une erreur lors de cette validation asynchrone.

Vous pouvez trouver ces erreurs en interrogeant l'événementNrIntegrationError dans le compte associé à l'API d'insertion de clé que vous avez utilisée. Le requestId de chaque requête sera étiqueté sur l'événement NrIntegrationError . Pour plus d'informations, voir Résoudre les problèmes d'un événement NRIntegrationError .

Codes d'état

L'API métrique peut renvoyer les codes d'état HTTP suivants :

Code d'état

Définition

202

Données acceptées.

400

La structure de la demande n'est pas valide.

403

Échec d'authentification.

404

Le chemin de la demande est incorrect.

405

J'ai utilisé une méthode de requête autre que POST.

408

La demande a mis trop de temps à atteindre le point de terminaison.

411

L'en-tête Content-Length n'a pas été inclus.

413

La charge utile était trop lourde. la charge doit être inférieure à 1 Mo (10^6 octets).

414

L'URI de la demande était trop longue.

415

Le Content-Type ou Content-Encoding n'était pas valide.

429

Le quota du taux de requêtes a été dépassé.

431

Les en-têtes de requête sont trop longs.

5xx

Une erreur de serveur s'est produite (veuillez réessayer).

Droits d'auteur © 2025 New Relic Inc.

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