Oye, algo está pasando ...

El estado actual de las cosas

Así que llegaste tan lejos en la serie, bien. Tienes tu clúster de Elasticsearch, tus latidos envían datos y tienes Kibana configurado con bonitos paneles de control. Eso está bien, pero es un sábado por la noche y una mala actualización del sistema derribó uno de sus nodos y los otros dos apenas están manejando la carga.

Algunos antecedentes primero

ODFE viene con el complemento de alerta preinstalado. Esto nos permite configurar alertas cuando se cumplen ciertas condiciones.

Hay tres formas de configurar alertas en ODFE: gráficos visuales, consultas de extracción y el detector de anomalías.

El primero se explica por sí mismo, por lo que nos centraremos en las consultas de extracción. El detector de anomalías es un tema interesante pero fuera del alcance de esta serie.

Las alertas tienen tres secciones importantes: monitores, disparadores y acciones. Un monitor es una consulta que se ejecuta cada cierto tiempo, cada monitor tiene varios desencadenantes. Un disparador es una condición que se evalúa en función de la respuesta de la consulta de extracción del monitor. Cuando una condición de activación se evalúa como verdadera, se ejecutarán varias acciones.

En lenguaje sencillo:

  • Monitor: ¿Cuántos correos electrónicos no leídos tengo?
  • Activador: correos electrónicos> 5
  • Acción: enviar mensaje de holgura

Antes de comenzar, debemos configurar un destino para las notificaciones. En la sección Otra información útil , encontrará un enlace para agregar una aplicación de Webhook entrante a Slack. Tome nota de la URL del webhook.

Vaya a la sección Alertas, vaya a la pestaña Destinos y haga clic en "Agregar destino". Asígnele un nombre, seleccione "Slack" como tipo y pegue la URL de su webhook allí.

ODFE lanzó recientemente notificaciones por correo electrónico y también admite webooks personalizados para otras aplicaciones de mensajería como equipos.

Una vez que haya terminado, haga clic en "Crear".

Configurar un monitor

Para empezar con las alertas necesitamos una consulta. Una consulta básica de Elastcsearch se parece a esto:

Promedio de uso de memoria en los últimos 5 minutos

Afortunadamente, no es necesario que escriba todo esto para cada consulta. La sección de visualización es básicamente un editor de consultas visual.

Como lo que queremos es un número simple, podemos usar la visualización métrica. Cambie la agregación a "promedio", seleccione "system.memory.actual.used.pct" como campo, haga clic en actualizar y básicamente ya está.

Ahora necesitamos obtener la consulta. Cerca del botón "Guardar", habrá un botón "inspeccionar". Haga clic en él y cambie la opción superior derecha con el nombre "Ver: Datos" a "Ver: Solicitudes" haciendo clic en él y seleccionando la opción del menú desplegable. Kibana le mostrará tres pestañas: Estadísticas (muy útil para medir el rendimiento de las consultas), Solicitud y Respuesta. Haga clic en Solicitar y luego en el icono de copia en la sección superior derecha de la pestaña de solicitud.

Continúe y pegue esa consulta en su editor de código favorito.

Ahora podemos proceder con la creación de una alerta. Vaya a la sección Alertas y haga clic en la pestaña Monitores. Haga clic en crear monitor, asígnele un nombre y seleccione "Definir mediante consulta de extracción" en el menú desplegable "Método de definición".

En el menú desplegable del índice, escriba "metricbeat- *" y presione enter. Esto dividirá el espacio de abajo en dos. A la izquierda, definirá una consulta y a la derecha verá la respuesta después de hacer clic en “Ejecutar”.

Reemplace la consulta existente con la que obtuvo de la visualización y haga clic en el botón "Ejecutar" en la esquina superior derecha.

Tu respuesta debería verse así:

El problema con esto es que si lo ejecuta dentro de una hora, el resultado será el mismo. Esto se debe a que en nuestra consulta de extracción, las fechas son estáticas.

Aquí está nuestro problema:

Tiempo estático

Para solucionar este problema, modifique la consulta para que se parezca a esto:

Tiempo dinámico

Entonces, si presiona el botón "Ejecutar" varias veces, verá que el valor cambia.

Desplácese hacia abajo y haga clic en "Crear", esto lo llevará a la pantalla "Crear disparador".

Crear un disparador

Para comenzar, establezca el nombre del disparador y seleccione un nivel de gravedad (esto es arbitrario). A continuación, verá la respuesta para la consulta de Monitor y, justo debajo de la respuesta, tendrá la Condición de activación . Por defecto, la condición de activación será "ctx.results [0] .hits.total.value> 0".

Por ahora nos centraremos en todo lo que va después de “ctx.results [0]”. La consulta predeterminada evalúa si la cantidad de documentos que lee la consulta es mayor que 0. Esto no nos sirve de nada, necesitamos el uso de memoria. Como puede ver, nuestra respuesta tiene el campo aggregation.1.value que es lo que queremos, así que cambie su condición de activación a esto:

"Ctx.results [0] .aggregation.1.value> 0"

Desplácese un poco hacia abajo y haga clic en el botón "Ejecutar" y observe cómo la respuesta de la condición de activación cambia a "verdadera". Ahora establezca el valor después del signo ">" en algo así como 0,8 para el 80%, porque la memoria siempre estará por encima del 0%.

Configurar una acción

Debajo del botón "Ejecutar" podrá configurar acciones. Aquí puede notificar un destino con un mensaje.

Primero, asigne un nombre a la acción y seleccione el destino que creó anteriormente. Escribe un asunto para el mensaje y desplázate un poco hacia abajo. Aquí verá la vista previa del mensaje.

Queremos incluir variables en nuestros mensajes para que no necesitemos crear un disparador para cada servidor que tenemos. Para incluir una variable de la respuesta en el mensaje, use la siguiente plantilla:

Mensaje de muestra para el uso de la memoria

En el lado derecho de la pantalla hay un botón "Enviar mensaje de prueba" para probar su destino.

Finalmente, para evitar una inundación de notificaciones cuando algo sale mal, haga clic en la casilla de verificación "Habilitar limitación de acción" e ingrese una cantidad razonable de minutos para esperar antes de enviar otra notificación.

Para concluir, haga clic en crear.

Próximos pasos

En la próxima y última entrega de esta serie, revisaremos algunas configuraciones de rendimiento y disponibilidad y compartiré algunas cosas que aprendí por las malas.

Vea otros artículos relacionados .

Otra información útil

Webhooks entrantes flojos

Suggested posts

Migración de Solr a Opensearch

Migración de 100 millones de documentos de solr a opensearch

Migración de Solr a Opensearch

Utilizamos solr para nuestros casos de uso de búsqueda/alimentación/autosugerencia/personalización de comercio electrónico. Desafíos con solr cluster ELK ahora viene con licencia premium elástica.

Construcción de un sistema de detección de anomalías modelo no supervisado a gran escala — Parte 2

Creación de modelos ML con observabilidad a escala

Construcción de un sistema de detección de anomalías modelo no supervisado a gran escala — Parte 2

Por Rajeev Prabhakar, Han Wang, Anindya Saha En nuestro blog anterior discutimos los diferentes desafíos que enfrentamos para el monitoreo de modelos y nuestra estrategia para abordar algunos de estos problemas. Mencionamos brevemente el uso de puntajes z para identificar anomalías.

Related posts

Ese Archivo de Amenazas: Vol 7 Black Basta

Ese Archivo de Amenazas: Vol 7 Black Basta

En el mundo interconectado de hoy, la amenaza de los ataques cibernéticos es más frecuente que nunca. Los ciberdelincuentes y los actores del estado-nación buscan constantemente explotar las vulnerabilidades y robar datos valiosos, lo que representa un riesgo significativo para las organizaciones de todos los tamaños.

¿Qué hace que un podcast sea influyente?

¿Qué hace que un podcast sea influyente?

La semana pasada noté un comunicado de prensa, enviado a través de PressGazette (un sitio web de noticias de los medios británicos). El artículo anunciaba que Acast, la empresa de publicidad y alojamiento de podcasts de Scandi, lideraría un consorcio de editores "probablemente los más influyentes" en podcasting.

Dos años en diseño: lo bueno, lo malo y lo feo...

Dos años en diseño: lo bueno, lo malo y lo feo...

“Oye, Siri, toca Me Dive de Olivia Dean”. Fue en mayo de 2021 cuando comencé mi pasantía en Future Academy Africa en Akure, Nigeria.

¿Es el arte alguna vez apolítico?

¿Es el arte alguna vez apolítico?

Ayer cerramos la puerta del Festival de la Canción de Eurovisión de este año con una gran final brillante y caótica en la que la cantante sueca Loreen se llevó a casa el trofeo, convirtiéndose en la primera mujer en ganar dos veces y devolviendo la corona a Suecia 50 años después de que ABBA ganara la competencia. con “Waterloo”. Se convirtieron en uno de los actos más grandes en el canon de la música pop.