Notificaciones de Synthetic Monitoring
Personaliza tus alertas en Synthetic Monitoring para ofrecer a los respondedores de la llamada un contexto significativo. El sistema de plantillas de mensajes de Synthetic Monitoring te permite enriquecer las alertas con detalles de test, extraer datos de los resultados de test y dirigir las notificaciones condicionalmente en función del fallo.
Puedes personalizar las notificaciones utilizando:
Nota: Para obtener información sobre el acceso a variables locales (configuración), consulta la sección Variables.
Mensajes de monitores (noun) prellenados
Synthetic Monitoring proporciona mensajes prellenados con metadatos como:
- Nombre del test
- Identificador del monitor (noun)
- Ubicaciones fallidas
- Información sobre la última ejecución fallida de test
- Es hora de que test empiece a fallar
Estos valores aparecen en forma predeterminada en la mayoría de los canales de notificación. Puedes sustituir o ampliar el mensaje con plantillas.
Ejemplos:
Solicitud:
{{#with synthetics.attributes.result.request}}
We made a {{method}} request to `{{{url}}}`{{#if headers}} with the following headers:
{{#each headers}}
{{@key}}={{this}}
{{/each}}
{{/if}}
{{#if body}}And the body:
{{{body}}}
{{/if}}
{{/with}}
Respuesta:
{{#with synthetics.attributes.result.response}}
We received an HTTP {{httpVersion}} response with a {{statusCode}} status code{{#if headers}} with the following headers:
{{#each headers}}
{{@key}}={{this}}
{{/each}}
{{/if}}
{{#if redirects}}
Redirections:
{{#each redirects}}
* {{statusCode}} redirect to `{{{location}}}`
{{/each}}
{{/if}}
The body's size was {{eval "humanize_bytes(bodySize)"}}{{#if body}} and contained:
{{{body}}}
{{/if}}
{{/with}}
{{! Websocket request and response details }}
{{#with synthetics.attributes.result}}
{{#if handshake }}
The handshake received a response with the {{handshake.response.statusCode}} status code.
{{/if}}
{{#if request}}
A WebSocket request was made with the message:
{{{request.message}}}
{{/if}}
{{#if response}}
and the response closed with status code {{response.close.statusCode}} and reason `{{response.close.reason}}`
{{#if response.message}}, containing the message:
{{{response.message}}}
{{else}}.{{/if}}
{{/if}}
{{/with}}
Itera sobre las variables extraídas para los tests de la API:
Variables de configuración:
{{#each synthetics.attributes.result.variables.config}}
* **Name:** {{name}}
Type: {{type}}
Value: {{#if secure}}*Obfuscated (value hidden)*{{else}}{{value}}{{/if}}
{{/each}}
Variables extraídas (solo visibles para notificaciones de recuperación):
{{#each synthetics.attributes.result.variables.extracted}}
* **Name:** {{name}}
Global Variable ID: {{id}}
Value: {{#if secure}}*Obfuscated (value hidden)*{{else}}{{val}}{{/if}}
{{/each}}
Itera sobre pasos extrayendo variables para tests de varios pasos de la API:
{{! List extracted variables across all successful steps }}
# Extracted Variables
{{#each synthetics.attributes.result.steps}}
{{#each variables.extracted}}
* **Name**: `{{name}}`
Value: {{#if secure}}*Obfuscated (value hidden)*{{else}}`{{{val}}}`{{/if}}
{{/each}}
{{/each}}
Itera sobre los pasos extrayendo variables para tests del navegador y móvil:
{{#each synthetics.attributes.result.steps}}
{{#if extractedValue}}
* **Name**: {{extractedValue.name}}
**Value:** {{#if extractedValue.secure}}*Obfuscated (value hidden)*{{else}}{{extractedValue.value}}{{/if}}
{{/if}}
{{/each}}
Mostrar un mensaje de notificación personalizado
Las notificaciones de Synthetic Monitoring admiten la posibilidad de mostrar solo el mensaje de notificación personalizado en las notificaciones de alertas, ocultando todo el contenido enriquecido predeterminado, como los detalles de la consulta, las etiquetas, las capturas de pantalla y los pies de página.
En forma predeterminada, todos los monitores incluyen detalles enriquecidos en el mensaje de alerta. Esto puede incluir:
- Metadatos de tests
- Información de step (UI) / paso (generic) fallido
- Capturas de pantalla
- Etiquetas
- Enlaces a los recursos de Datadog
Notificaciones prestablecidas
Puedes seleccionar entre las siguientes opciones para ocultar o mostrar la información pertinente para ti:
| Prestablecido | Descripción |
|---|
show_all | (Predeterminado) Incluye todos los datos y metadatos enriquecidos. |
hide_handles | Oculta los controladores de @notification (por ejemplo, @slack-channel). |
hide_all | Oculta todo el contenido adicional, excepto el mensaje personalizado y el enlace al evento. |
Ejemplo
| Canal | show_all | hide_all |
|---|
| Correo electrónico | Información del detalle completo de test, captura de pantalla, step (UI) / paso (generic) | Solo mensaje personalizado y enlace al evento |
| Slack | Contenido enriquecido + vista previa de la ejecución fallida | Solo mensaje personalizado |
Consulta Notificaciones de monitor (noun) para obtener más información.
Notificaciones simuladas
Puedes test tus mensajes de notificación enviando notificaciones simuladas. Para ello:
- Añade un controlador de notificación a tu mensaje de monitor (noun)
- Haz clic en el botón Notificaciones simuladas:
Selecciona el tipo de notificación que deseas test y haz clic en Send (Enviar):
Las notificaciones simuladas incluyen [TEST] en sus líneas del asunto y utilizan un nombre de monitor (noun) predeterminado cuando sea necesario.
Ejemplos:
Notas importantes sobre las notificaciones simuladas:
- Los resultados de tests utilizados en las simulaciones son datos de muestra estandarizados, no resultados reales de tu configuración específica del test.
- Los resultados varían en función del tipo de test, el subtipo (para tests de la API) y el tipo de notificación:
- Notificaciones de alerta: Datos de fallos simulados
- Notificaciones de recuperación: Datos de éxito simulados
- Todos los usuarios reciben los mismos datos simulados, independientemente de su configuración del test.
Referencias adicionales
Más enlaces, artículos y documentación útiles: