New Relic te permite usar NerdGraph para crear un script de monitorización del navegador. monitor de browser con script ejecuta código JavaScript personalizado en un entorno de navegador real, lo que le permite simular interacciones complejas de usuarios y flujos de trabajo de varios pasos. Este tutorial proporciona ejemplos de cómo emplear la API de NerdGraph para automatizar la creación de un script de monitorización del navegador.
Crear un monitor de navegador con script
Puedes crear un script de monitorización del navegador usando la mutación syntheticsCreateScriptBrowserMonitor. Esta mutación le permite configurar un monitoreo scriptizado personalizado que ejecuta su código JavaScript en un navegador.
parámetro de entrada
Parámetro | Tipo de datos | ¿Es obligatorio? | Descripción |
|---|---|---|---|
| Entero | Sí | New Relic donde se creará el monitor. |
| Matriz | Sí | Browser(es) que empleará el monitor para ejecutar trabajos. Navegadores compatibles:
,
,
. |
| Matriz | Sí | Dispositivos que empleará el monitor para ejecutar trabajos. Dispositivos compatibles:
,
,
,
,
. |
| Matriz | Sí | matriz de identificador donde el monitor ejecutará comprobaciones (por ejemplo,
). |
| Cadena | Sí | El nombre para mostrar el monitor de su navegador con script. |
| Enumeración | Sí | Con qué frecuencia se ejecuta el monitor. Opciones:
,
,
,
,
,
,
,
,
. |
| Cadena | Sí | El tipo de tiempo de ejecución empleado por su monitor.
es el único valor aceptado. |
| Cadena | Sí | La versión del tipo de tiempo de ejecución empleada por su monitor.
es el único valor aceptado. |
| Cadena | Sí | El idioma empleado en su monitor.
es el único valor aceptado. |
| Cadena | Sí | El código JavaScript que ejecuta el monitor. Debe ser texto simple, no codificado en base64. El script puede emplear las API Selenium Webdriver para controlar el navegador. |
| Enumeración | Sí | El estado del monitor. Opciones:
(el monitor está activo y realizando comprobaciones),
(el monitor está inactivo). |
| Booleano | No | Captura una captura de pantalla durante la ejecución del trabajo cuando ocurre una falla o se ejecuta un script. |
| Flotante | No | Objetivo Apdex del monitor en segundos, empleado para completar reportes SLA. El valor predeterminado es 7,0 segundos. |
Solicitud de muestra
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 } }}Ejemplo de respuesta
Una respuesta exitosa devuelve null para los errores:
{ "data": { "syntheticsCreateScriptBrowserMonitor": { "errors": null } }}Si hay algún problema al crear el monitor, la matriz errors contendrá objetos con campos description y type que explican qué salió mal.
Actualizar un monitor de navegador con script
Puede actualizar un script de monitor de navegador existente empleando la mutación syntheticsUpdateScriptBrowserMonitor. Esto le permite modificar la configuración de un monitor de navegador con script que ya fue creado.
parámetro de entrada
Parámetro | Tipo de datos | ¿Es obligatorio? | Descripción |
|---|---|---|---|
| Cadena | Sí | El de entidad única del monitor que desea actualizar. |
| Matriz | No | Browser(es) que empleará el monitor para ejecutar trabajos. Navegadores compatibles:
,
,
. |
| Matriz | No | Dispositivos que empleará el monitor para ejecutar trabajos. Dispositivos compatibles:
,
,
,
,
. |
| Matriz | No | matriz de identificador donde el monitor ejecutará comprobaciones (por ejemplo,
). |
| Cadena | No | El nombre para mostrar actualizado para el monitor de su navegador con script. |
| Enumeración | No | Con qué frecuencia se ejecuta el monitor. Opciones:
,
,
,
,
,
,
,
,
. |
| Cadena | No | El tipo de tiempo de ejecución empleado por su monitor.
es el único valor aceptado. |
| Cadena | No | La versión del tipo de tiempo de ejecución empleada por su monitor.
es el único valor aceptado. |
| Cadena | No | El idioma empleado en su monitor.
es el único valor aceptado. |
| Cadena | No | El código JavaScript que ejecuta el monitor. Debe ser texto simple, no codificado en base64. |
| Enumeración | No | El estado del monitor. Opciones:
(el monitor está activo y realizando comprobaciones),
(el monitor está inactivo). |
| Booleano | No | Captura una captura de pantalla durante la ejecución del trabajo cuando ocurre una falla o se ejecuta un script. |
| Flotante | No | Objetivo Apdex del monitor en segundos, empleado para completar reportes SLA. El valor predeterminado es 7,0 segundos. |
Solicitud de muestra
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 } }}Ejemplo de respuesta
Una respuesta exitosa devuelve null para los errores:
{ "data": { "syntheticsUpdateScriptBrowserMonitor": { "errors": null } }}Si hay algún problema al actualizar el monitor, la matriz errors contendrá objetos con campos description y type que explican qué salió mal.
Actualizar el tiempo de ejecución de un script de monitor de navegador
Puede actualizar un monitor del navegador con script para emplear el nuevo entorno de ejecución Chrome 100+. Esto garantiza que su monitor emplee las últimas funciones del navegador y actualizaciones de seguridad.
parámetro de entrada
Parámetro | Tipo de datos | ¿Es obligatorio? | Descripción |
|---|---|---|---|
| Cadena | Sí | El de entidad única del monitor que desea actualizar. |
| Cadena | Sí | El tipo de tiempo de ejecución.
es el único valor aceptado. |
| Cadena | Sí | La versión de tiempo de ejecución.
es el único valor aceptado. |
| Cadena | Sí | El lenguaje de script.
es el único valor aceptado. |
Solicitud de muestra
mutation { syntheticsUpdateScriptBrowserMonitor( guid: "ENTITY_GUID" monitor: { runtime: { runtimeType: "CHROME_BROWSER" runtimeTypeVersion: "100" scriptLanguage: "JAVASCRIPT" } } ) { errors { description type } }}Ejemplo de respuesta
Una respuesta exitosa devuelve null para los errores:
{ "data": { "syntheticsUpdateScriptBrowserMonitor": { "errors": null } }}Si hay algún problema al actualizar el entorno de ejecución del monitor, la matriz errors contendrá objetos con campos description y type que explican qué salió mal.
Degradar el tiempo de ejecución de un script de monitor de navegador
Puede degradar un script de monitor de navegador para emplear un entorno de ejecución legacy. Esto puede ser necesario por razones de compatibilidad, pero tenga en cuenta que los entornos de ejecución legacy finalizarán su vida útil el 22 de octubre de 2024.
Importante
Los tiempos de ejecución heredados están obsoletos y finalizarán su vida útil el 22 de octubre de 2024. No se recomienda cambiar a entornos de ejecución legacy, excepto por necesidades de compatibilidad temporales.
parámetro de entrada
Parámetro | Tipo de datos | ¿Es obligatorio? | Descripción |
|---|---|---|---|
| Cadena | Sí | El de entidad única del monitor que desea degradar. |
| Cadena | Sí | Establezca la cadena vacía
para emplear el tiempo de ejecución legacy. |
| Cadena | Sí | Establezca la cadena vacía
para emplear el tiempo de ejecución legacy. |
| Cadena | Sí | Establezca la cadena vacía
para emplear el tiempo de ejecución legacy. |
Solicitud de muestra
mutation { syntheticsUpdateScriptBrowserMonitor( guid: "ENTITY_GUID" monitor: { runtime: { runtimeType: "", runtimeTypeVersion: "", scriptLanguage: "" } } ) { errors { description type } }}Ejemplo de respuesta
Una respuesta exitosa devuelve null para los errores:
{ "data": { "syntheticsUpdateScriptBrowserMonitor": { "errors": null } }}Si hay algún problema al degradar el tiempo de ejecución del monitor, la matriz errors contendrá objetos con campos description y type que explican qué salió mal.
Eliminar un monitor de navegador con script
Cuando un script de monitor de navegador ya no es necesario, puedes eliminarlo permanentemente usando la mutación syntheticsDeleteMonitor.
Para eliminar un monitor, consulte la sección Eliminar monitor Sintético.