Profundice en la gestión inteligente de registros y errores de Stackify

Lo que es apilar?

Stackify proporciona un servidor basado en la nube, herramientas de rendimiento y supervisión de la aplicación y solución de problemas denominada Smart Error and Log Management (SmartELM). En este tutorial, le presentaré sus características únicas de SmartELM, que son especialmente útiles para desarrolladores profesionales que supervisan y solucionan problemas con el código de producción posterior a la implementación..

Para muchos de nosotros, los registros son los hijastros descuidados de la codificación; para los programadores profesionales, son esenciales pero a menudo se quedan cortos en su utilidad. Stackify cambia esto al proporcionar una especie de grabador de vuelo de cabina en vivo para su aplicación.

Una vez que su aplicación deja la producción, ¿qué tan accesibles y útiles son sus archivos de registro? Hay un montón de datos. Necesitas tener acceso a ella. Los archivos que necesita pueden estar distribuidos en varios servidores o límites de servicio. Estos son archivos planos, difíciles de buscar y difíciles de leer. También a menudo carecen de contexto, por ejemplo, qué cuenta de usuario o método se relaciona con la entrada del registro. Luego está la complejidad de administrar los archivos a medida que crecen: llaman al administrador de sistemas, ¿verdad? Menos mal que últimamente has sido amable con ellos..

El seguimiento inteligente de errores y la administración de registros de Stackify resuelve muchos de estos problemas.

En un nivel alto, SmartELM de Stackify hace lo siguiente:

  • Agrega todos los datos de registro y excepción a un servicio.
  • Lo pone a disposición, al instante, para todos en su equipo..
  • Presenta una línea de tiempo de registro a lo largo de toda la pila, la infraestructura de servidores de producción y prueba.
  • Está altamente indexado, se puede buscar y es "inteligente" al respecto.

Una vez que comience a registrar los datos de su aplicación en Stackify, puede hacer lo siguiente:

  • Administre y busque registros en todas sus aplicaciones y servidores.
  • Convierta los errores en bruto en errores consultables, contextualizados e inteligentes..
  • Ver colecciones de declaraciones de registro relacionadas con un error específico.
  • Reciba alertas basadas en tasas de error y consultas de registro permanentes, como nuevas excepciones, picos en errores y la reaparición de problemas resueltos.

En última instancia, estas características lo ayudan a encontrar y solucionar problemas de aplicaciones más rápido.

Puede ejecutar el monitoreo del servidor y la aplicación de Stackify junto con los registros inteligentes y la administración de errores o puede ejecutarlos de manera independiente. Si bien este tutorial destacará principalmente SmartELM, también lo guiaré a través de los conceptos básicos del servicio de monitoreo.

Instalar el monitoreo de Stackify

Puede encontrar la documentación de la guía de instalación para su plataforma aquí. Estoy usando Stackify con Linux.


Stackify proporciona soporte de monitoreo para Windows, Linux y Azure, y error y registro para .NET y Java. El soporte para PHP, Node.js, Python y Ruby llegará pronto.

Visita el Ajustes Menú y desplácese hacia abajo para obtener su clave de activación:

Inicie sesión en su servidor y ejecute los siguientes comandos para instalar el agente en un solo paso:

sudo -s wget https://s1.stackify.com/Account/AgentDownload/Linux --output-document = stackify.tar.gz && tar -zxvf stackify.tar.gz stackify-agent-install-32bit && cd stackify- agent-install-32bit && ./agent-install.sh 

Deberás pegar la clave de activación de arriba. Debería ver algo como esto:

Dale a la aplicación un poco de tiempo para comenzar a recopilar datos, y luego puedes continuar a continuación. También puede explorar la caja de arena de Stackify: hay una descripción general detallada de las características en esta publicación del blog y las instrucciones de la caja de arena al final (desplácese hasta la parte inferior de la página).

Tablero de apilamiento

El panel de control de Stackify le brinda visibilidad de la salud de sus servidores y aplicaciones con telemetría basada en el tiempo y el resaltado de los eventos que debe investigar..

Una vez que ingresen los datos, su panel de control de Stackify se verá así:

Aquí hay un primer plano de la barra de herramientas:

Pilas enumera las aplicaciones y servicios que estás ejecutando:

Vigilancia te muestra lo que está sucediendo en servidores específicos:

También puede filtrar entre sus entornos de desarrollo, prueba y producción:

Ahora que tiene un sentido de alto nivel del entorno de Stackify, profundicemos en el seguimiento de errores inteligentes y la gestión de registros (SmartELM) más profundamente.

Seguimiento inteligente de errores y gestión de registros

Hay algunos escenarios clave para los que querrá usar SmartELM, como identificar y recibir notificaciones de:

  1. Nuevas excepciones
  2. Reaparición o recurrencia de problemas resueltos para los que ha configurado filtros
  3. Picos de errores en el último minuto o en la última hora.
  4. Un análisis más profundo del error y su fuente.

Voy a explicarte cómo Stackify te ayuda con esto. Pero primero, tratemos la instalación de los agregadores de registro apropiados.

Stackify ha creado agregadores de registro para algunos de los marcos más comunes. Puede obtener más información sobre cómo instalarlos en la documentación en línea: Guías de instalación de registros y métricas. También he proporcionado enlaces individuales a continuación:

  • log4net
  • NLog
  • Elmah
  • log4j
  • Volver a iniciar sesión

Si está utilizando NuGet de Visual Studio, puede encontrar e integrar las bibliotecas y configuraciones de registro de Stackify de forma rápida y sencilla. Solo busque Stackify y luego instale el appender apropiado:

Una vez que estén instalados, Stackify comenzará a rastrear y registrar errores y registros..

Cuando visite la página del panel de Errores, verá algo como esto:

El gráfico en la parte superior nos muestra una representación visual de las tasas de error en el tiempo. Los resúmenes detallan errores específicos que ocurren en nuestro código. Stackify evita la duplicación de errores reportados, por lo que solo está viendo apariciones únicas.

Esta vista se puede personalizar completamente con una variedad de filtros. Puede hacer clic Activo, Resuelto, o Regresado Para ver problemas basados ​​en su estado conocido. Puedes configurar filtros por Aplicación, Ambiente, o Servidor. Y, puede personalizar el conjunto de campos que se muestra en la vista de tabla.

Supongamos que desea ver un intervalo de tiempo específico para un evento. Puede seleccionar visualmente ese rango de tiempo en el gráfico para restringir la consulta de errores:

Observe cómo el rango de tiempo de la frecuencia del evento se modifica con la selección, y los conteos de errores debajo del gráfico también se ajustan para mostrar solo aquellos dentro del rango de tiempo específico.

Vamos a acercarnos al primer error que aparece en Resúmenes. Este error ha ocurrido 172 veces en este estrecho intervalo de tiempo, por lo que necesitamos investigarlo más:

Haga clic en la descripción del error y verá una gran variedad de información sobre el error. Aquí está la información de la línea superior:

Desplácese hacia abajo y podrá ver los datos contextuales que se muestran en JSON. Discutiremos a continuación cómo puede registrar eventos con mayor granularidad y contexto.

Desplázate más y podrás ver. Variables del servidor con el evento:

Ahora, saltemos a la Iniciar sesión página (también puede restringir el rango de tiempo por selección visual aquí también):

Estás viendo los registros capturados en el momento del error en tus servidores agregados por Stackify sin tener que pedirle a tus administradores de sistemas ningún tipo de ayuda o acceso especial. 

También puede realizar búsquedas de texto completo en estos archivos de registro:

Y puede guardar estas búsquedas para filtrar rápidamente en problemas específicos en producción:

El ícono de error está asociado a mostrar los detalles del error modal. Al hacer clic en la sección de inicio del hipervínculo azul de JSON, se muestra la información estructurada que se registró..

Luego, al hacer clic en los iconos rojos de "error", puedo ampliar los datos estructurados que registré con el evento, como ID de cliente, correo electrónico y ID de pedido:

Repensando cómo los desarrolladores inician sesión

Stackify está tratando de animar a los desarrolladores a repensar el registro:

El registro es a menudo una de las pocas líneas de vida que tiene en entornos de producción donde no puede adjuntar y depurar físicamente. Desea registrar tantos datos contextuales relevantes como pueda.

En otras palabras, registre más, registre más de manera contextual y Stackify administrará y ayudará a darle sentido a los datos para usted.

Como se mencionó anteriormente, Stackify ha creado agregadores de registro para algunos de los marcos más comunes:

  • log4net
  • log4j
  • nLog
  • volver a iniciar sesión
  • Elmah

Y puede escribir directamente en su API para personalizar los datos de registro contextuales. Por ejemplo, una simple línea de código para registrar un evento con un objeto que se muestra a continuación:

log.Debug ("Created a Foo", foo);

Genera un contexto detallado en la vista de Stackify del archivo de registro de esta manera:

Otros escenarios Stackify Habilita

Sistema de alerta temprana para picos en las tasas de error

Puede solicitar a Stackify que supervise las tasas de error en su entorno, notificándole los umbrales de advertencia o urgentes:

Asegurar la ejecución de tareas de fondo

También puede configurar estos para los eventos esperados del sistema. Por ejemplo, puede configurar un monitor de frecuencia para verificar que su tarea en segundo plano se ejecuta tres veces cada quince minutos; Si no lo hace, Stackify te avisará..

También puede configurar grupos de notificación, para que las personas correctas sean notificadas con los eventos correctos:

Evaluación de la cobertura del guión de prueba

También puede medir el cambio en las tasas de error al mover el código de la prueba a la producción. Por ejemplo, si sus scripts de prueba no muestran los mismos errores y tasas de error que experimentó posteriormente en la producción, Stackify puede ayudarlo a identificar áreas del código que necesitan una cobertura de prueba más automatizada..

Aprenda más sobre SmartELM

Puede leer más sobre SmartELM en acción en Smarter Errors & Logs: Poner los datos a trabajar en el blog de Stackify. Puede encontrar documentación más detallada en el Panel de errores aquí y en el Panel de registros aquí..

Espero que estés impresionado con las soluciones SmartELM de Stackify. Aprendí mucho conociendo el producto..

Para concluir

El sofisticado servicio de gestión de registros y seguimiento de errores de Stackify le permite:

  • Recibe notificaciones por correo electrónico o texto sobre errores nuevos y regresivos y picos de error.
  • Salta a los registros con datos de contexto estructurados de tu código.
  • Realice una búsqueda de texto mejorada a través de sus errores.
  • Filtra los registros por error, por tiempo o por variables personalizadas, por ejemplo. Dirección IP o ID de cliente.
  • Guardar búsquedas y monitorear búsquedas.
  • Notificar a los miembros correctos del equipo a tiempo.

Stackify está alentando activamente a los desarrolladores a cambiar su forma de pensar para el registro y proporciona características potentes que hacen que valga la pena hacerlo, es decir, registrar más, registrar de forma inteligente con Stackify; administrarán los datos y mostrarán los datos contextuales sobre el problema que está investigando. Stackify también tiene una herramienta de monitoreo de aplicaciones que está totalmente integrada con la plataforma SmartELM presentada en este artículo, lo que permite a los desarrolladores monitorear también el rendimiento general de las aplicaciones, la satisfacción del cliente, los servidores, las bases de datos, las URL específicas y las métricas personalizadas..

Stackify es una herramienta para desarrolladores profesionales que desean mejorar su juego en el que cuenta, en producción..

Regístrese para una prueba gratuita en Stackify; También puede acceder a sus documentos técnicos a través del sitio..

Por favor, publique cualquier comentario o ideas adicionales a continuación. Intento participar en las discusiones. Háganos saber si desea obtener más información sobre Stackify. Puedes navegar por mis otros tutoriales de Tuts + en mi página de autor o seguirme en Twitter @reifman.

enlaces relacionados

  • Stackify.com 
  • Gestión inteligente de errores y registros (descripción general) 
  • Apilar estudios de caso
  • 3 formas de comprender los errores y el registro (blog Stackify)
  • 3 conjuntos de datos que traen contexto a las excepciones (blog de Stackify)
  • Errores y registros más inteligentes: poner los datos en funcionamiento (blog de Stackify)