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.
Le 22 octobre 2024, nous mettrons fin à la vie des versions conteneurisées subordonnées privées (appels par minute) et legacy versions synthétiques du runtime. À compter du 26 août 2024, vous ne pouvez plus créer de nouveau moniteur à l'aide de versions synthétiques d'exécution legacy . L'Synthetics API REST prend uniquement en charge la création de moniteurs à legacy l'aide de versions synthétiques d'exécution . Veuillez utiliser APINerdGraph pour gérer votre moniteur Synthétique en utilisant nos derniers runtimes afin d'éviter toute dégradation.
Notre API REST Synthetics est un moyen de gérer votre moniteur Synthétique via API mais la méthode recommandée est d'utiliser notre APINerdGraph.
Autorisations
Pour utiliser l'API REST Synthetics, vous devez disposer des autorisations liées à Synthetics et d'un .
Cette API peut être utilisée pour tous les moniteurs Synthétique. (Des méthodes API supplémentaires pour le navigateur scripté et le moniteur de test API sont également disponibles pour mettre à jour le script associé à ces moniteurs.) Toutes les données monitoring Synthétique sont disponibles via l'API. Les exemples API montrent la commande cURL.
Pour les comptes basés aux États-Unis, utilisez le point de terminaison suivant :
L'API REST de monitoring synthétique limite le taux d'interrogation d'un compte à trois requêtes par seconde. Les demandes effectuées au-delà de ce seuil renverront un code de réponse 429 .
Pour afficher une liste de tous les moniteurs de votre compte New Relic , envoyez une requête GET à $API_ENDPOINT/v3/monitors. Par exemple:
bash
$
curl-v\
>
-H"Api-Key:$API_KEY"$API_ENDPOINT/v3/monitors
Une demande réussie renverra une réponse 200 OK . Les données renvoyées seront un objet JSON au format suivant :
{
"monitors":[
{
"id":"2a1bc369-7654-489d-918e-f6g135h7i2jk",
"name":"monitor1",
"type":"BROWSER",
"frequency":60,
"uri":"http://example.com",
"locations":["AWS_US_WEST_1"],
"status":"DISABLED",
"slaThreshold":7,
"options":{},
"modifiedAt":"2016-09-26T23:12:46.981+0000",
"createdAt":"2016-09-26T23:12:46.981+0000",
"userId":0,
"apiVersion":"0.2.2"
}
],
"count":1
}
Arguments de la requête :
offset: Le décalage du nombre de moniteurs. La valeur par défaut est 0. Par exemple, si vous avez 40 moniteurs et que vous utilisez une valeur de décalage de 20, le moniteur 21-40 sera renvoyé.
limit:Le nombre de résultats par page, maximum 100. La valeur par défaut est 50.
Vous pouvez les inclure dans votre commande cURL comme suit :
Une demande réussie renverra une réponse 200 OK . Les données renvoyées seront un objet JSON au format suivant :
{
"id": UUID,
"name": string,
"type": string,
"frequency": integer,
"uri": string,
"locations": array of strings,
"status": string,
"slaThreshold": double,
"userId": integer,
"apiVersion": string
}
Un ID de moniteur non valide renverra 404 Not Found: The specified monitor doesn't exist.
Important
Le 22 octobre 2024, nous mettrons fin à la vie des versions conteneurisées subordonnées privées (appels par minute) et legacy versions synthétiques du runtime. À compter du 26 août 2024, vous ne pouvez plus créer de nouveau moniteur à l'aide de versions synthétiques d'exécution legacy . L'Synthetics API REST prend uniquement en charge la création de moniteurs à legacy l'aide de versions synthétiques d'exécution . Veuillez utiliser APINerdGraph pour gérer votre moniteur Synthétique en utilisant nos derniers runtimes afin d'éviter toute dégradation.
Pour ajouter un nouveau moniteur à votre compte Synthetics , envoyez une requête POST à $API_ENDPOINT/v3/monitors avec une charge JSON qui décrit le moniteur.
Tous les champs de l'exemple suivant sont obligatoires, sauf indication contraire :
Une requête réussie renverra une réponse 201 Created , avec l'URI du moniteur nouvellement créé spécifié dans l'en-tête location . Les codes d’erreur possibles incluent :
400 Bad Request:Une ou plusieurs valeurs du moniteur ne sont pas valides, ou le format de la demande n'est pas valide. Par exemple : la fréquence est hors limites ou un ou plusieurs des emplacements spécifiés ne sont pas valides. (Voir le message d'erreur dans le corps de la réponse.)
402 Payment Required:La création du moniteur augmentera vos contrôles programmés au-delà de la limite de contrôles achetés de votre compte.
Pour mettre à jour un moniteur existant dans New Relic, envoyez une requête PUT à $API_ENDPOINT/v3/monitors/$MONITOR_ID. De plus, pour le moniteur scripté, suivez les procédures pour mettre à jour le scriptcodé en BASE64.
Tous les champs sont obligatoires. Cependant, le TYPE du moniteur cannot peut être modifié.
Requests PUT sont destinées à remplacer l'entité cible, donc tous les attributs requis dans la charge JSON lors de la création d'un nouveau moniteur sont également requis lors de la mise à jour d'un moniteur existant.
Une requête réussie renverra une réponse 204 No Content , avec un corps vide. Les codes d’erreur possibles incluent :
400 Bad Request:Une ou plusieurs valeurs du moniteur ne sont pas valides, ou le format de la demande n'est pas valide. Par exemple, la fréquence est hors limites ou un ou plusieurs des emplacements spécifiés ne sont pas valides. (Voir le message d'erreur dans le corps de la réponse.)
404 Not Found: Le moniteur spécifié n'existe pas.
Pour corriger un moniteur existant dans New Relic, envoyez une requête PATCH à $API_ENDPOINT/v3/monitors/$MONITOR_ID.
Qequests PATCH sont destinées à mettre à jour les attributs individuels de votre moniteur Synthétique plutôt qu'à mettre à jour l'entité entière, vous ne pouvez donc fournir que l'attribut que vous souhaitez mettre à jour.
Une requête réussie renverra une réponse 204 No Content , avec un corps vide. Les codes d’erreur possibles incluent :
400 Bad Request:Une ou plusieurs valeurs du moniteur ne sont pas valides, ou le format de la demande n'est pas valide. Par exemple, la fréquence est hors limites ou un ou plusieurs des emplacements spécifiés ne sont pas valides. (Voir le message d'erreur dans le corps de la réponse.)
404 Not Found: Le moniteur spécifié n'existe pas.
Pour supprimer un moniteur existant dans Synthétique monitoring, envoyez une requête DELETE au point de terminaison/v3/monitors/$MONITOR_ID:
bash
$
curl-v\
>
-H"Api-Key:$API_KEY"\
>
-X DELETE $API_ENDPOINT/v3/monitors/$MONITOR_ID
Une requête réussie renverra une réponse 204 No Content , avec un corps vide. Une demande infructueuse renverra la réponse 404 Not Found: Le moniteur spécifié n'existe pas.
Pour récupérer la liste des emplacements valides dans votre moniteur Synthétique, utilisez la commande suivante :
bash
$
curl-v\
>
-X GET -H"Api-Key:$API_KEY"$API_ENDPOINT/v1/locations
API de script pour navigateur scripté et moniteur de test API
En plus de l'API générale, il existe plusieurs méthodes API pour le navigateur scripté (SCRIPT_BROWSER) et le navigateur de test API (SCRIPT_API). Ces exemples montrent la commande cURL.
Pour afficher le script associé à un SCRIPT_BROWSER ou SCRIPT_API spécifique dans le moniteur Synthétique de votre compte, envoyez une requête GET à $API_ENDPOINT/v3/monitors/$MONITOR_ID/script. Par exemple:
bash
$
curl-v
$
-H"Api-Key:$API_KEY"
$
$API_ENDPOINT/v3/monitors/$MONITOR_ID/script
Une demande réussie renverra une réponse 200 OK . Les données renvoyées seront un objet JSON au format suivant :
{
"scriptText": BASE64 encoded string
}
Les codes d’erreur possibles incluent :
403 Forbidden: Le moniteur spécifié n'est pas de type SCRIPT_BROWSER ou SCRIPT_API.
404 Not Found: Le moniteur spécifié n'existe pas ou le script associé au moniteur n'existe pas.
Pour ajouter un nouveau moniteur scripté à votre moniteur Synthétique avec l'API REST :
Pour mettre à jour le script associé à un moniteur SCRIPT_BROWSER ou SCRIPT_API spécifique, envoyez une requête PUT à $API_ENDPOINT/v3/monitors/$MONITOR_ID/script avec une charge JSON contenant le scriptText (obligatoire).
Une requête réussie renverra une réponse 204 No Content avec un corps vide. Les codes d’erreur possibles incluent :
400 Bad Request: Chaîne codée BASE64 non valide pour scriptText ou hmac.
403 Forbidden: Le moniteur spécifié n'est pas du type SCRIPT_BROWSER ou SCRIPT_API.
404 Not Found: Le moniteur spécifié n'existe pas.
Lors de la création ou de la mise à jour d'un moniteur pour un site privé sur lequel l'exécution script vérifié est activée, vous devez utiliser scriptLocations pour définir le mot de passe :
{
"scriptText": BASE64 encoded String,
"scriptLocations":[
{
"name": Location name,
"hmac" BASE64 encoded String of SHA256 HMAC for location
}
]
}
Le mot de passe utilisé pour générer la chaîne HMAC doit correspondre au mot de passe défini pour le site privé. Si vous avez plusieurs emplacements avec l'exécution de script vérifiée activée, le HMAC de chaque emplacement doit être calculé. Lors de la génération de la chaîne HMAC, utilisez l'algorithme SHA256 avec le script et le mot de passe.
Voici un exemple de script :
var assert =require('assert');
assert.equal('1','1');
Cet exemple utilise password comme mot de passe pour scriptLocation:
Vous devez supprimer le dernier caractère de nouvelle ligne du script et de la valeur HMAC calculée avant l'encodage en BASE64.
Étapes de calcul :
Calculez la valeur HMAC à partir du script. Une façon est d'utiliser : cat script | openssl dgst -sha256 -hmac "password" > hmac
Supprimez le caractère de nouvelle ligne si celui-ci a été ajouté par openssl.
Encodez le HMAC en BASE64 sans saut de ligne.
Exemple de navigateur scripté
Voici un exemple d'utilisation de l'API REST de New Relic et du script bash pour créer un moniteur de navigateur scripté.
L'exemple suivant montre la commande cURL pour créer un moniteur de navigateur scripté.
En haut du script, remplacez les variables par vos valeurs spécifiques.
Pour la variable scriptfile , identifiez le nom de fichier du script à créer. Voici un exemple de script qui peut être enregistré sous sample_synth_script.js pour être utilisé dans l'exemple :