DevOps

Sentry

Cómo Bluak utiliza Sentry para capturar, triagear y resolver errores en producción en aplicaciones Laravel, Node.js, React y React Native.

DevOps

Sentry

Backend

Laravel

Frontend

React

    Descripción general

    Sentry es la plataforma de monitoreo de errores y performance más utilizada en el ecosistema de desarrollo moderno. Captura automáticamente excepciones y errores en producción, los agrupa por tipo, los enriquece con contexto (usuario, entorno, stack trace, breadcrumbs de acciones previas) y notifica al equipo con la información necesaria para diagnosticar y resolver el problema rápidamente.

    En Bluak, Sentry se configura desde el inicio en todos los proyectos que van a producción. Los errores silenciosos en producción son deuda técnica invisible; Sentry los hace visibles y accionables.

    Por qué en Bluak utilizamos Sentry

    • Visibilidad total de errores: los errores que los usuarios no reportan (y son la mayoría) quedan registrados automáticamente.
    • Stack traces completos: el error incluye el stack trace, la request HTTP, el usuario afectado, el entorno y los eventos previos al error.
    • Agrupación inteligente: errores similares se agrupan automáticamente para evitar el ruido de duplicados.
    • Performance monitoring: trazas de performance que permiten identificar endpoints lentos, queries lentas o componentes frontend que bloquean el render.
    • Release tracking: Sentry correlaciona errores con releases, permitiendo identificar qué versión introdujo un bug.
    • SDKs para todo el stack: SDK oficial para PHP (Laravel), Node.js, React, React Native, Vue y más.

    Estándar de uso de Bluak

    • Configurado desde el primer deploy: Sentry se instala en el proyecto antes de subir a producción, no cuando ya hay problemas.
    • Source maps en frontend: los errores JavaScript muestran el código original, no el código minificado.
    • Release tracking: el SHA del commit se envía a Sentry en el deploy para correlacionar errores con versiones.
    • Contexto de usuario: cuando el usuario está autenticado, se asocia su ID (anonimizado si hay requisitos GDPR) al error.
    • Alertas configuradas: reglas de alerta para errores nuevos, errores con alta frecuencia y degradaciones de performance.
    • Environments separados: development, staging, production como environments separados en Sentry.

    Laravel: config/sentry.php + bootstrap

    // .env
    SENTRY_LARAVEL_DSN=https://xxxxx@o0.ingest.sentry.io/0
    SENTRY_TRACES_SAMPLE_RATE=0.1  // 10% de traces de performance
    
    // app/Exceptions/Handler.php
    public function register(): void
    {
        $this->reportable(function (Throwable $e) {
            if (app()->bound('sentry')) {
                \Sentry\captureException($e);
            }
        });
    }

    React: Sentry con React Router

    import * as Sentry from '@sentry/react'
    
    Sentry.init({
      dsn: import.meta.env.VITE_SENTRY_DSN,
      environment: import.meta.env.MODE,
      release: import.meta.env.VITE_APP_VERSION,
      tracesSampleRate: 0.1,
      integrations: [Sentry.browserTracingIntegration()],
    })
    
    export const App = Sentry.withErrorBoundary(AppComponent, {
      fallback: <ErrorPage />,
    })

    Preguntas frecuentes

    ¿Es más caro desarrollar un software a medida que comprar uno ya hecho?

    Inicialmente, el software a medida puede suponer una inversión mayor, pero a medio y largo plazo reduce costes derivados de licencias, ineficiencias, adaptaciones forzadas y mantenimiento externo. Además, mejora el retorno de inversión (ROI) gracias a su alineación con los objetivos del negocio.

    El tiempo de desarrollo varía según la complejidad del proyecto, pero en promedio puede oscilar entre 3 y 9 meses. Factores como integración con otros sistemas, número de módulos y validaciones influyen directamente en el plazo.

    Algunos de los beneficios clave incluyen:

    - Incremento de la eficiencia operativa hasta en un 74% mediante automatización y adaptación total a procesos internos.
    - Mayor seguridad al estar diseñado con criterios específicos desde su arquitectura.
    - Escalabilidad garantizada: el sistema crece con tu negocio.

    (Fuente: RVS Media, Moldstud, SEI-CMU)
     

    El software a medida es una solución tecnológica desarrollada específicamente para adaptarse a los procesos, objetivos y estructura de una empresa. A diferencia del software comercial o “off-the-shelf”, no impone limitaciones funcionales ni obliga a modificar tus procesos internos.

    Documentación relacionada