MENUMENU
    • Cursos
      • Programación y Desarrollo
        • Desarrollo Front End
          • Desarrollo Web
          • JavaScript
          • React Js
        • Desarrollo Back End
          • Node.Js
          • MongoDB
      • Marketing Digital
        • Community Manager
          • Marketing de contenidos
          • Branding
          • Diseño de contenidos
          • Copywriting
          • Análisis de métricas
        • Publicidad Online
          • Google Analytics
          • Google Ads
          • Facebook Ads
          • Email Marketing
          • SEO - Posicionamiento web
          • Inbound Marketing
          • Growth Marketing
      • Microsoft Excel
        • Excel Básico
        • Excel Avanzado
    • Carreras
      • Programación y Desarrollo
        • Carrera de Desarrollo Full Stack
        • Carrera de Desarrollo Frontend
        • Carrera de Desarrollo Front End React
        • Carrera de Desarrollo Backend
      • Marketing Digital
        • Carrera de Marketing Digital
        • Carrera de Community Manager
        • Carrera de Publicidad Online
      • Microsoft Excel
        • Carrera de Excel Experto
    • Webinars
    • Blog
    • Empresas
CAMPUS VIRTUAL
Digital Bluee
    MENUMENU
    • Cursos
      • Programación y Desarrollo
        • Desarrollo Front End
          • Desarrollo Web
          • JavaScript
          • React Js
        • Desarrollo Back End
          • Node.Js
          • MongoDB
      • Marketing Digital
        • Community Manager
          • Marketing de contenidos
          • Branding
          • Diseño de contenidos
          • Copywriting
          • Análisis de métricas
        • Publicidad Online
          • Google Analytics
          • Google Ads
          • Facebook Ads
          • Email Marketing
          • SEO - Posicionamiento web
          • Inbound Marketing
          • Growth Marketing
      • Microsoft Excel
        • Excel Básico
        • Excel Avanzado
    • Carreras
      • Programación y Desarrollo
        • Carrera de Desarrollo Full Stack
        • Carrera de Desarrollo Frontend
        • Carrera de Desarrollo Front End React
        • Carrera de Desarrollo Backend
      • Marketing Digital
        • Carrera de Marketing Digital
        • Carrera de Community Manager
        • Carrera de Publicidad Online
      • Microsoft Excel
        • Carrera de Excel Experto
    • Webinars
    • Blog
    • Empresas

Interés general

Monitorea tu proyecto con Alertas usando Papertrail

  • Categorías Interés general, Programación
  • Fecha 27/03/2023

Todo funciona correctamente de manera local.

Pero de pronto los usuarios de tu proyecto empiezan a encontrar errores en producción.

Y te resulta difícil solucionarlos sin información adicional.

¿Te ha pasado?

Hoy vamos a ver cómo usar Logs y Alertas, para estar al tanto de errores en tu proyecto Laravel, y puedas solucionarlos a tiempo.

Laravel Logging

Laravel ofrece varios drivers para canales de logging.

Es decir, varias formas alternativas para escribir logs.

Entre los channel drivers más usados tenemos:

  • daily.- Driver basado en Monolog. Escribe sobre archivos, y va rotando cada día.
  • single.- Escribe sobre archivos, pero siempre sobre el mismo.
  • null.- Simplemente descarta todos los mensajes de log.
  • slack.- Permite enviar logs a un canal de Slack.
  • papertrail.- Permite enviar logs a Papertrail. A continuación veremos más sobre esto.
  • stack.- Actúa como wrapper para enviar logs a múltiples canales.

Papertrail

Papertrail es un servicio que nos permite gestionar logs de forma muy sencilla.

Enviamos nuestros logs a Papertrail y luego seremos capaces de buscar logs en base a filtros, y definir alertas.

Cómo configurar un canal de Papertrail

Para escribir logs sobre un canal de Papertrail necesitamos sólo 2 datos: host y port.

Para obtener estos datos de configuración necesitas crearte una cuenta de Papertrail.

Configurar alertas en Papertrail

Papertrail nos permite ver los mensajes de log entrantes en tiempo real.

Sin embargo, nosotros no vamos a estar pendientes del visor de eventos todo el tiempo.

Es por eso que también podemos definir alertas en Papertrail:

Crear Alertas en Papertrail

Para crear un alerta indicamos:

  • Qué logs nos interesan (en este caso nuestra query nos alerta de error logs)
  • La frecuencia con que queremos evaluar nuestro alerta (por ejemplo, cada día, cada hora, etc)
  • La condición que disparará el alerta (si no se encontraron coincidencias, si se encontraron al menos X coincidencias)
  • Y finalmente nuestra zona horaria

Enviar logs sobre múltiples canales

Si usamos el driver stack podemos definir múltiples canales de logging.

Por ejemplo, en el videotutorial de arriba, definimos una «pila» para enviar logs a 2 canales: daily y papertrail, de la siguiente manera.

'channels' => [
    'stack' => [
        'driver' => 'stack',
        'channels' => ['syslog', 'slack'],
    ],
    // ...
],

Niveles de log

Puedes escribir mensajes de log usando los siguientes métodos:

use Illuminate\Support\Facades\Log;
 
Log::emergency($message);
Log::alert($message);
Log::critical($message);
Log::error($message);
Log::warning($message);
Log::notice($message);
Log::info($message);
Log::debug($message);

Cada uno de ellos se corresponde con un log level determinado.

Información contextual

Los métodos aceptan también un segundo argumento, para agregar información contextual.

Es decir, puedes enviar un arreglo asociativo, para que al revisar logs se entienda mejor el contexto en que ocurrieron.

Por ejemplo, si falló el inicio de sesión para un usuario, nos interesará saber cuál es su id:

Log::info('User failed to login.', ['id' => $user->id]);

Si ocurre un error al procesar un pago, la información contextual sería por ejemplo, el importe a pagar, el concepto del pago (producto o servicio adquirido), a nombre de quién se hace el pago, y cuál es el id de la transacción.

Conclusión

Como puedes ver, configurar logs y alertas en un proyecto Laravel es muy sencillo.

En el video de ejemplo vemos cómo usar el driver stack, para enviar nuestros logs tanto a daily como a papertrail.

  • De esta manera nuestros mensajes son escritos en archivos de manera local,
  • y adicionalmente son enviados a Papertrail, para que nos envíe alertas en caso que sean frecuentes.

De hecho hicimos pruebas, y recibimos este alerta por correo electrónico:

Alerta de Papertrail por correo

La informática está presente en todos lados y no es que sea importante, sino que ya es imprescindible hoy en día.

Por ello, todo lo que rodea la tecnología y los profesionales que se dedican a la informática tienen un futuro asegurado.

No es menos la microinformática, una parte indispensable y la más usada.

La microinformática puede parecer un término confuso y hay que saber primero qué es, para qué sirve y luego qué hace un Técnico en Sistemas microinformáticos y de redes.

Carrera de programacion

Etiqueta:cursos online, HTML, JAVASCRIPT, Lenguajes de programación, PHYTON, STACK OVERFLOW, TIOBE

author avatar
Juan Cruz Darocha

Publicación anterior

Estrategias de generación de leads para empresas: la guía definitiva para agencias
27/03/2023

Siguiente publicación

Ciclo de vida de un proyecto
27/03/2023

Entradas recientes

  • Tendencias en Desarrollo Frontend para 2025 31/03/2025
  • Programadores de React: El Perfil Más Buscado por las Empresas Tecnológicas 30/03/2025
  • MongoDB: La Base de Datos NoSQL que Revoluciona el Almacenamiento de Datos 29/03/2025
  • ¿Cuánto gana un desarrollador en la Argentina?: estos son los sueldos que se pagan en el sector 28/03/2025
  • Futuro y beneficios de la IA para programar 27/03/2025

CURSOS

  • Todos los cursos

EVENTOS

  • Webinars

Cursos gratuitos

  • Curso de Introducción al Desarrollo Web
  • Curso de Introducción al Marketing Digital

SOPORTE

  • Terminos y Condiciones
  • Plataforma

Nuestras redes