New Relic vous permet d'utiliser NerdGraph pour créer un moniteur de navigateur scripté. moniteur de navigateur scripté exécute du code JavaScript personnalisé dans un véritable environnement de navigateur, vous permettant de simuler une interaction utilisateur complexe et des workflows en plusieurs étapes. Ce tutoriel fournit des exemples d'utilisation de l'API NerdGraph pour automatiser la création de moniteurs de navigateur scriptés.
Créer un moniteur de navigateur scripté
Vous pouvez créer un moniteur de navigateur scripté en utilisant la mutation syntheticsCreateScriptBrowserMonitor. Cette mutation vous permet de configurer monitoring personnalisée par script qui exécute votre code JavaScript dans un navigateur.
Paramètres d'entrée
paramètres | Type de données | Est-ce obligatoire ? | Description |
|---|---|---|---|
| Entier | Oui | Votre New Relic sur lequel le moniteur sera créé. |
| Array | Oui | Browser(s) que le moniteur utilisera pour exécuter les tâches. Navigateurs pris en charge :
,
,
. |
| Array | Oui | Dispositifs que le système de monitoring utilisera pour exécuter les tâches. Appareils pris en charge :
,
,
,
,
. |
| Array | Oui | éventail d'identifiants où le moniteur effectuera des vérifications (par exemple,
). |
| Chaîne | Oui | Nom d'affichage de votre moniteur de navigateur scripté. |
| Énumération | Oui | Fréquence d'exécution du moniteur. Options :
,
,
,
,
,
,
,
,
. |
| Chaîne | Oui | Le type d'exécution utilisé par votre moniteur.
est la seule valeur acceptée. |
| Chaîne | Oui | La version du type d'exécution utilisée par votre moniteur.
est la seule valeur acceptée. |
| Chaîne | Oui | La langue utilisée par votre moniteur.
est la seule valeur acceptée. |
| Chaîne | Oui | Le code JavaScript exécuté par le moniteur. Il doit s'agir de texte brut, et non d'un encodage en base64. Le script peut utiliser les API Sélénium WebDriver pour contrôler le navigateur. |
| Énumération | Oui | État du moniteur. Options :
(le moniteur est actif et effectue des vérifications),
(le moniteur est inactif). |
| Booléen | Non | Capture une capture d'écran pendant l'exécution d'une tâche lorsqu'une panne survient ou qu'un script est exécuté. |
| Virgule flottante | Non | L'Apdex cible du moniteur en secondes, utilisé pour alimenter les rapports SLA. Par défaut, 7,0 secondes. |
Demande d'échantillon
mutation { syntheticsCreateScriptBrowserMonitor( accountId: ACCOUNT_ID monitor: { browsers: [BROWSERS] devices: [DEVICES] locations: { public: ["LOCATION_1", "LOCATION_2"] } name: "MONITOR_NAME" period: PERIOD runtime: { runtimeType: "RUNTIME_TYPE" runtimeTypeVersion: "RUNTIME_TYPE_VERSION" scriptLanguage: "SCRIPT_LANGUAGE" } script: "SCRIPT_CONTENT" status: STATUS advancedOptions: { enableScreenshotOnFailureAndScript: ENABLE_SCREENSHOT } apdexTarget: APDEX_TARGET } ) { errors { description type } }}Exemple de réponse
Une réponse positive renvoie null en cas d'erreur :
{ "data": { "syntheticsCreateScriptBrowserMonitor": { "errors": null } }}En cas de problème lors de la création du moniteur, le éventail errors contiendra des objets avec des champs description et type expliquant ce qui s'est mal passé.
Mettre à jour un moniteur de navigateur scripté
Vous pouvez mettre à jour un moniteur de navigateur scripté existant en utilisant la mutation syntheticsUpdateScriptBrowserMonitor. Cela vous permet de modifier la configuration d'un moniteur de navigateur scripté qui a déjà été créé.
Paramètres d'entrée
paramètres | Type de données | Est-ce obligatoire ? | Description |
|---|---|---|---|
| Chaîne | Oui | L'identifiant unique de l'entité du moniteur que vous souhaitez mettre à jour. |
| Array | Non | Browser(s) que le moniteur utilisera pour exécuter les tâches. Navigateurs pris en charge :
,
,
. |
| Array | Non | Dispositifs que le système de monitoring utilisera pour exécuter les tâches. Appareils pris en charge :
,
,
,
,
. |
| Array | Non | éventail d'identifiants où le moniteur effectuera des vérifications (par exemple,
). |
| Chaîne | Non | Le nom d'affichage mis à jour pour votre moniteur de navigateur scripté. |
| Énumération | Non | Fréquence d'exécution du moniteur. Options :
,
,
,
,
,
,
,
,
. |
| Chaîne | Non | Le type d'exécution utilisé par votre moniteur.
est la seule valeur acceptée. |
| Chaîne | Non | La version du type d'exécution utilisée par votre moniteur.
est la seule valeur acceptée. |
| Chaîne | Non | La langue utilisée par votre moniteur.
est la seule valeur acceptée. |
| Chaîne | Non | Le code JavaScript exécuté par le moniteur. Il doit s'agir de texte brut, et non d'un encodage en base64. |
| Énumération | Non | État du moniteur. Options :
(le moniteur est actif et effectue des vérifications),
(le moniteur est inactif). |
| Booléen | Non | Capture une capture d'écran pendant l'exécution d'une tâche lorsqu'une panne survient ou qu'un script est exécuté. |
| Virgule flottante | Non | L'Apdex cible du moniteur en secondes, utilisé pour alimenter les rapports SLA. Par défaut, 7,0 secondes. |
Demande d'échantillon
mutation { syntheticsUpdateScriptBrowserMonitor( guid: ENTITY_GUID monitor: { browsers: [BROWSERS] devices: [DEVICES] locations: { public: ["LOCATION_1", "LOCATION_2"] } name: "MONITOR_NAME" period: PERIOD runtime: { runtimeType: "RUNTIME_TYPE" runtimeTypeVersion: "RUNTIME_TYPE_VERSION" scriptLanguage: "SCRIPT_LANGUAGE" } script: "SCRIPT_CONTENT" status: STATUS advancedOptions: { enableScreenshotOnFailureAndScript: ENABLE_SCREENSHOT } apdexTarget: APDEX_TARGET } ) { errors { description type } }}Exemple de réponse
Une réponse positive renvoie null en cas d'erreur :
{ "data": { "syntheticsUpdateScriptBrowserMonitor": { "errors": null } }}En cas de problème lors de la mise à jour du moniteur, le éventail errors contiendra des objets avec des champs description et type expliquant ce qui s'est mal passé.
Mettre à niveau l'exécution d'un moniteur de navigateur scripté
Vous pouvez mettre à niveau un moniteur de navigateur scripté pour utiliser le nouvel environnement d'exécution Chrome 100+. Cela garantit que votre moniteur utilise les dernières fonctionnalités du navigateur et les mises à jour de sécurité.
Paramètres d'entrée
paramètres | Type de données | Est-ce obligatoire ? | Description |
|---|---|---|---|
| Chaîne | Oui | L'identifiant unique de l'entité du moniteur que vous souhaitez mettre à niveau. |
| Chaîne | Oui | Le type d'exécution.
est la seule valeur acceptée. |
| Chaîne | Oui | La version d'exécution.
est la seule valeur acceptée. |
| Chaîne | Oui | Le langage de script.
est la seule valeur acceptée. |
Demande d'échantillon
mutation { syntheticsUpdateScriptBrowserMonitor( guid: "ENTITY_GUID" monitor: { runtime: { runtimeType: "CHROME_BROWSER" runtimeTypeVersion: "100" scriptLanguage: "JAVASCRIPT" } } ) { errors { description type } }}Exemple de réponse
Une réponse positive renvoie null en cas d'erreur :
{ "data": { "syntheticsUpdateScriptBrowserMonitor": { "errors": null } }}En cas de problème lors de la mise à niveau de l'environnement d'exécution du moniteur, le éventail errors contiendra des objets avec des champs description et type expliquant ce qui s'est mal passé.
Rétrograder la durée d'exécution d'un moniteur de navigateur scripté
Vous pouvez rétrograder un moniteur de navigateur scripté pour utiliser un runtime legacy. Cela peut s'avérer nécessaire pour des raisons de compatibilité, mais veuillez noter que legacy environnements d'exécution ne seront plus pris en charge le 22 octobre 2024.
Important
Les environnements d'exécution hérités sont obsolètes et leur fin de vie est prévue pour le 22 octobre 2024. Le retour à des environnements d' legacy n'est pas recommandé, sauf pour des besoins de compatibilité temporaires.
Paramètres d'entrée
paramètres | Type de données | Est-ce obligatoire ? | Description |
|---|---|---|---|
| Chaîne | Oui | L'identifiant unique de l'entité du moniteur que vous souhaitez rétrograder. |
| Chaîne | Oui | Définissez la valeur sur une chaîne vide
pour utiliser l'ancien environnement d' legacy. |
| Chaîne | Oui | Définissez la valeur sur une chaîne vide
pour utiliser l'ancien environnement d' legacy. |
| Chaîne | Oui | Définissez la valeur sur une chaîne vide
pour utiliser l'ancien environnement d' legacy. |
Demande d'échantillon
mutation { syntheticsUpdateScriptBrowserMonitor( guid: "ENTITY_GUID" monitor: { runtime: { runtimeType: "", runtimeTypeVersion: "", scriptLanguage: "" } } ) { errors { description type } }}Exemple de réponse
Une réponse positive renvoie null en cas d'erreur :
{ "data": { "syntheticsUpdateScriptBrowserMonitor": { "errors": null } }}En cas de problème lors de la rétrogradation de l'environnement d'exécution du moniteur, le éventail errors contiendra des objets avec des champs description et type expliquant ce qui s'est mal passé.
Supprimer un moniteur de navigateur scripté
Lorsqu'un moniteur de navigateur scripté n'est plus nécessaire, vous pouvez le supprimer définitivement à l'aide de la mutation syntheticsDeleteMonitor.
Pour supprimer un moniteur, référez-vous à la section Supprimer un moniteur Synthétique.