Te ofrecemos esta traducción automática para facilitar la lectura.
En caso de que haya discrepancias entre la versión en inglés y la versión traducida, se entiende que prevalece la versión en inglés. Visita esta página para obtener más información.
Permisos de usuario relevantes: los mismos permisos de monitoreo sintético que se aplican para usar la UI de Sintético se aplican para usar NerdGraph
Comprender los campos en el explorador NerdGraph
Puede ver las definiciones de campos en el explorador NerdGraph, pero puede ser útil para comprender mejor los campos LOCATION, PERIOD, TAGS y otros.
Para identificar una ubicación privada en su secuencia de comandos, utilice el GUID de entidad de la ubicación privada. Para verificar que un script se ejecuta correctamente, incluya también el atributo vsePassword . Por ejemplo:
locations: {
private: {
guid: LOCATION_ENTITY_GUID,
vsePassword: YOUR_VSE_PASSWORD
}
}
ubicación pública utilice el identificador de ubicación sin el prefijo AWS , por ejemplo:
locations: {
public: ["US_EAST_2", "US_WEST_1"]
}
El atributo PERIOD define un intervalo de tiempo para que se ejecute su monitor. Para definir el intervalo, utilice estos formularios:
EVERY_MINUTE por cada minuto.
EVERY_N_MINUTES, donde 'N' son minutos. Los valores admitidos incluyen EVERY_5_MINUTES, EVERY_10_MINUTES, EVERY_15_MINUTES y EVERY_30_MINUTES.
EVERY_HOUR por cada hora.
EVERY_N_HOURS, donde 'N' son horas. Los valores admitidos incluyen EVERY_6_HOURS y EVERY_12_HOURS.
EVERY_DAY por una vez al día.
La etiqueta es opcional. Puede agregar una etiqueta durante la creación del monitor o más tarde usando llamadas de etiqueta en NerdGraph o la UI. Se pueden agregar varias etiquetas en una sola llamada de mutación utilizando una matriz que contiene claves y valores.
Algunos campos son para una configuración más avanzada. Estos son opcionales.
DAYS_UNTIL_EXPIRATION: Le notifica cuando necesita actualizar su certificado. Por ejemplo, si desea recibir una notificación 30 días antes de que caduque el certificado, deberá ingresar 30.
Para todos los monitores:
APDEX_TARGET: el objetivo Apdex del monitor utilizado para completar los informes SLA. El valor predeterminado es 7 segundos (7000 ms).
Utilice consulta para recuperar datos
Consulta realizar solicitudes para recuperar datos. Para conocer capacidades de consulta adicionales disponibles para su entidad Sintético, consulte el tutorial de API de entidad NerdGraph.
Puedes consultar tus monitores Sintético para obtener información del estado actual de tus datos o detalles sobre la configuración monitor . Algunos ejemplos de consulta incluyen:
{
actor {
entitySearch(query: "domain = 'SYNTH' AND type = 'MONITOR'") {
results {
entities {
... on SyntheticMonitorEntityOutline {
guid
name
accountId
monitorType
tags {
key
values
}
}
}
}
}
}
}
Puedes consultar tu ubicación privada:
{
actor {
entitySearch(query: "domain = 'SYNTH' AND type = 'PRIVATE_LOCATION'") {
results {
entities {
accountId
guid
name
tags {
key
values
}
}
}
}
}
}
Consultar credenciales seguras solo le permite recuperar metadatos, pero no los valores de las credenciales en sí:
{
actor {
entitySearch(query: "domain = 'SYNTH' AND type = 'SECURE_CRED'") {
results {
entities {
... on SecureCredentialEntityOutline {
accountId
guid
name
tags {
key
values
}
updatedAt
}
}
}
}
}
}
Recupere el script utilizado en una API con script o supervise el script del navegador. Otros tipos monitor devolverán un error.
{
actor {
account(id: YOUR_ACCOUNT_ID) {
synthetics {
script(monitorGuid: "ENTITY_GUID") {
text
}
}
}
}
}
Recupera los pasos configurados para un monitor de pasos. Otros tipos de monitor devolverán un error.
{
actor {
account(id: YOUR_ACCOUNT_ID) {
synthetics {
steps(monitorGuid: "ENTITY_GUID") {
ordinal
type
values
}
}
}
}
}
Recupere el GUID de la entidad para un monitor Sintético utilizando el ID del monitor.
{
actor {
entitySearch(
query: "(domainId = 'MONITOR_ID')"
) {
results {
entities {
... on SyntheticMonitorEntityOutline {
guid
name
monitorId
}
}
}
}
}
}
Crea tu monitor Sintético
A continuación se muestran algunos ejemplos de solicitudes para automatizar la creación de su monitor Sintético.
Sugerencia
Incluya el objeto de tiempo de ejecución que incluye runtimeType, runtimeTypeVersion y scriptLanguage para utilizar un tiempo de ejecución más nuevo. No incluya el objeto de tiempo de ejecución ni estos atributos para continuar usando un tiempo de ejecución legacy .
El monitor de ping comprueba que su aplicación se esté ejecutando. Aquí hay un ejemplo para crear uno en NerdGraph:
mutation {
syntheticsCreateSimpleMonitor (
accountId: YOUR_ACCOUNT_ID
monitor: {
locations: {
public: ["LOCATION_1", "LOCATION_2"]
},
name: "YOUR_MONITOR_NAME",
period: PERIOD,
status: STATUS,
uri: "MONITORED_URI",
advancedOptions: {
customHeaders: {
name: "HEADER_NAME",
value: "HEADER_VALUE"
},
redirectIsFailure: REDIRECT_IS_FAILURE,
responseValidationText: "VALIDATION_TEXT",
shouldBypassHeadRequest: BYPASS_HEAD_REQUEST,
useTlsValidation: TLS_VALIDATION
},
apdexTarget: APDEX_TARGET
}
) {
errors {
description
type
}
}
}
El monitor browser simple utiliza una instancia de Chrome para imitar las visitas de los clientes. Aquí hay un ejemplo para crear uno en NerdGraph:
El monitor de enlaces rotos comprueba si los enlaces de una página web fallan. Aquí hay un ejemplo para crear uno en NerdGraph:
mutation {
syntheticsCreateBrokenLinksMonitor (
accountId: YOUR_ACCOUNT_ID,
monitor: {
locations: {
public: ["LOCATION_1", "LOCATION_2"]
},
name: "YOUR_MONITOR_NAME",
period: PERIOD,
status: STATUS,
apdexTarget: APDEX_TARGET,
uri: "MONITOR_URI",
tags: {
key: "YOUR_TAG_NAME",
values: "TAG_VALUE"
}
}
) {
errors {
description
type
}
}
}
Actualiza tu monitor Sintético
Si bien no puede cambiar el tipo de monitor después de crearlo, puede actualizar su configuración. Solo se requieren la guía y la configuración que deben actualizarse como parte de la solicitud.
Sugerencia
Incluya el objeto de tiempo de ejecución que incluye runtimeType, runtimeTypeVersion y scriptLanguage para actualizar un monitor para usar un tiempo de ejecución más nuevo. Incluya este objeto y establezca estos atributos en una cadena vacía para degradar a un tiempo de ejecución legacy . No incluya este objeto ni estos atributos para continuar usando un tiempo de ejecución legacy .
Utilice esto para actualizar su monitor de ping:
mutation {
syntheticsUpdateSimpleMonitor (
guid: "ENTITY_GUID",
monitor: {
locations: {
public: ["LOCATION_1", "LOCATION_2"]
},
name: "YOUR_MONITOR_NAME",
period: PERIOD,
status: STATUS,
uri: "MONITORED_URI",
advancedOptions: {
customHeaders: {
name: "HEADER_NAME",
value: "HEADER_VALUE"
},
redirectIsFailure: REDIRECT_IS_FAILURE,
responseValidationText: "VALIDATION_TEXT",
shouldBypassHeadRequest: BYPASS_HEAD_REQUEST,
useTlsValidation: TLS_VALIDATION
},
apdexTarget: APDEX_TARGET
}
) {
errors {
description
type
}
}
}
Para actualizar un monitor browser simple (incluida la capacidad de actualizar la versión en tiempo de ejecución), use esto:
Utilice esto para actualizar un monitor de enlaces rotos:
mutation {
syntheticsUpdateBrokenLinksMonitor (
guid: ENTITY_GUID,
monitor: {
locations: {
public: ["LOCATION_1", "LOCATION_2"]
},
name: "YOUR_MONITOR_NAME",
period: PERIOD,
status: STATUS,
apdexTarget: APDEX_TARGET,
uri: "MONITOR_URI",
tags: {
key: "YOUR_TAG_NAME",
values: "TAG_VALUE"
}
}
) {
errors {
description
type
}
}
}
Puede utilizar el siguiente ejemplo para actualizar un browser simple, una API con secuencia de comandos o monitorear el navegador con una secuencia de comandos a los nuevos tiempos de ejecución de Chrome 100+ o Node.js 16.10. El siguiente ejemplo actualiza un script de monitor de browser con al nuevo tiempo de ejecución desde el tiempo de ejecución legacy .
Para actualizar un monitor browser simple usando el siguiente ejemplo, cambie la mutación a syntheticsUpdateSimpleBrowserMonitor en lugar de syntheticsUpdateScriptBrowserMonitor.
Para actualizar un monitor API con secuencia de comandos utilizando el siguiente ejemplo, cambie la mutación a syntheticsUpdateScriptApiMonitor en lugar de syntheticsUpdateScriptBrowserMonitor.
Consulte los campos opcionales para obtener detalles adicionales sobre la configuración del tiempo de ejecución.
mutation {
syntheticsUpdateScriptBrowserMonitor (
guid: "<ENTITY_GUID>",
monitor: {
runtime: {
runtimeType: "RUNTIME_TYPE",
runtimeTypeVersion: "RUNTIME_TYPE_VERSION",
scriptLanguage: "SCRIPT_LANGUAGE"
}
}
) {
errors {
description
type
}
}
}
Eliminar un monitor Sintético
Utilice estos scripts para eliminar su monitor:
Elimine un monitor utilizando el GUID de la entidad del monitor.
mutation {
syntheticsDeleteMonitor (
guid: "ENTITY_GUID"
) {
deletedGuid
}
}
Gestiona tu ubicación privada
Una ubicación privada le permite monitorear la aplicación detrás de su firewall. Cuando creas una ubicación privada, instalas y configuras minion privado para ejecutar el monitor asignado a esa ubicación privada.
mutation{
syntheticsCreatePrivateLocation (
accountId: NR_ACCOUNT_ID,
name: "PrivateLocationName",
description: "Optional description",
verifiedScriptExecution: false
) {
guid
errors {
description
type
}
}
}
mutation {
syntheticsUpdatePrivateLocation (
guid: YOUR_ENTITY_GUID,
description: "EnterYourDescription",
verifiedScriptExecution: true
) {
description
verifiedScriptExecution
errors {
description
type
}
}
}
mutation {
syntheticsDeletePrivateLocation (
guid: YOUR_ENTITY_GUID
) {
errors {
description
type
}
}
}
Si necesita eliminar un trabajo atrasado difícil de manejar, utilice esto:
mutation {
syntheticsPurgePrivateLocationQueue (
guid: YOUR_ENTITY_GUID
) {
errors {
description
type
}
}
}
Administre sus credenciales seguras
Utilice credenciales seguras al almacenar, proteger y administrar de forma centralizada la información protegida utilizada por su monitor, como contraseñas, clave de API o certificados codificados. El uso de NerdGraph le permite cambiar mediante programación los valores de sus credenciales seguras si necesita restablecer alguna credencial por algún motivo.
mutation {
syntheticsCreateSecureCredential (
accountId: YOUR_ENTITY_GUID,
description: "YourOptionalDescription",
key: SECURE_CREDENTIAL_NAME,
value: SECURE_CREDENTIAL_VALUE
) {
errors {
description
}
}
}
mutation {
syntheticsUpdateSecureCredential (
accountId: YOUR_ACCOUNT_ID,
description: "YourOptionalDescription",
key: SECURE_CREDENTIAL_NAME,
value: SECURE_CREDENTIAL_VALUE) {
createdAt
lastUpdate
errors {
description
}
}
}
mutation {
syntheticsDeleteSecureCredential (
accountId: YOUR_ACCOUNT_ID,
key: SECURE_CREDENTIAL_NAME
) {
errors {
description
}
}
}
Gestiona el tiempo de inactividad de tu monitor
Monitor tiempo de inactividad te permite especificar horas en las que tu Sintético debe dejar de funcionar. Hemos proporcionado diferentes fragmentos que demuestran cómo programar el tiempo de inactividad del monitor para su Sintético. Debe actualizar estos fragmentos para especificar la zona horaria, las horas de inicio y de finalización. Para obtener más información sobre cuándo puede programar el tiempo de inactividad del monitor, consulte nuestro documento Deshabilitar el monitoreo durante los horarios de mantenimiento programados. Para encontrar valores de zona horaria, consulte la base de datos tz de zonas horarias. Por ejemplo, América/Los Ángeles usaría la abreviatura PDT.