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 | Navigateur(s) que le moniteur utilisera pour exécuter des 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 de runtime utilisée par votre monitor. Utilisez
pour utiliser automatiquement la version la plus récente de Chrome (recommandé). Des versions spécifiques plus anciennes comme
ou
sont également acceptées mais seront dépréciées. |
| 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 | Navigateur(s) que le moniteur utilisera pour exécuter des 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 de runtime utilisée par votre monitor. Utilisez
pour utiliser automatiquement la version la plus récente de Chrome (recommandé). Des versions spécifiques plus anciennes comme
ou
sont également acceptées mais seront dépréciées. |
| 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. Nous vous recommandons d'utiliser la version LATEST pour vous assurer que votre monitor reste automatiquement à jour avec les sorties de Chrome les plus récentes.
Important
Gestion des versions de Chrome: New Relic passe à un modèle de version LATEST pour les environnements d'exécution Chrome. Certaines versions spécifiques de Chrome (telles que 134 et 140) arriveront en fin de vie et seule LATEST sera maintenue à l’avenir. Le 18 août 2026, les monitorer encore sur d'anciennes versions de Chrome seront mis à niveau de force vers la dernière version stable (Chrome 147 ou supérieure). Lors de la sortie d'une nouvelle version de Chrome, elle sera disponible dans les moniteurs de navigateur scriptés en tant que LATEST d'ici une semaine. Pour vous assurer que vos monitorer reçoivent automatiquement les dernières mises à jour et fonctionnalités de Chrome, mettez à niveau vers runtimeTypeVersion: "LATEST" avant cette date.
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 du runtime. Utilisez
pour utiliser automatiquement la version la plus récente de Chrome (recommandé). Des versions spécifiques plus anciennes comme
ou
sont également acceptées mais seront dépréciées. |
| Chaîne | Oui | Le langage de script.
est la seule valeur acceptée. |
Demande d'échantillon
Mettez à niveau vers la DERNIÈRE version de Chrome (recommandé) :
mutation { syntheticsUpdateScriptBrowserMonitor( guid: "ENTITY_GUID" monitor: { runtime: { runtimeType: "CHROME_BROWSER" runtimeTypeVersion: "LATEST" 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é.
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.