Logs en Node.js con alertas, en 5 minutos
Tus console.log, pino o winston con búsqueda, los errores con su stack, el viaje de cada petición y el aviso al teléfono cuando un pedido no termina. Sin cambiar cómo escribes.
- 1
Instala
npm i @estiaje/sdk - 2
Tu llave
Crea tu cuenta y pon la llave en
ESTIAJE_TOKEN. O pídele a tu IA «conecta este repo a Estiaje» (el conector). Sin la llave no sale nada por la red: puedes instrumentar hoy. - 3
Tus logs, tus errores y el hilo de cada petición, al arrancar
● Probado en CIimport { estiajeFromEnv } from '@estiaje/sdk'; export const estiaje = estiajeFromEnv({ service: 'tienda' }); estiaje.capturarConsola(); // tus console.log, tal cual estiaje.capturarErrores(); // los que nadie atrapó app.use(estiaje.middleware()); // el hilo de cada petición // … tus rutas … app.use(estiaje.errores()); // al final: los 5xx, con su stack// main.ts import { estiajeFromEnv } from '@estiaje/sdk'; export const estiaje = estiajeFromEnv({ service: 'tienda' }); estiaje.capturarConsola(); estiaje.capturarErrores(); const app = await NestFactory.create(AppModule); app.use(estiaje.middleware()); // el hilo de cada peticiónimport { estiajeFromEnv } from '@estiaje/sdk'; export const estiaje = estiajeFromEnv({ service: 'tienda' }); estiaje.capturarConsola(); estiaje.capturarErrores(); fastify.addHook('onRequest', (req, _reply, done) => { estiaje.conHilo(req.headers.traceparent as string | undefined, done); });// un worker, un cron o una cola import { estiajeFromEnv } from '@estiaje/sdk'; export const estiaje = estiajeFromEnv({ service: 'cobros' }); estiaje.capturarConsola(); estiaje.capturarErrores(); // con el traceparent del mensaje sigue ese hilo; sin él, empieza uno await estiaje.conHilo(mensaje.traceparent, () => procesar(mensaje)); - 4
El proceso que debe terminar
estiaje.event('pedido.pagado', { order_id, monto }); // … cuando se surte … estiaje.outcome('pedido.surtido', { order_id }); - 5
El aviso
En el panel, en Procesos: «todo
pedido.pagadoespera supedido.surtido, pororder_id, en 30 minutos». Si no llega, te avisa al teléfono, por correo o en Slack, con el dinero en riesgo.
Y si quieres más
- Tus logs de pino o winston:
estiaje.destino()como un stream más. - Tus servidores:
medirServidor()de@estiaje/sdk/servidor: CPU, memoria y disco, con aviso antes de que se llene. - Tu base de datos lenta:
estiaje.medirConsultas()midepgymysql2. - Tus despliegues:
npx @estiaje/sdk desplegadoen tu CI.
Todo lo demás está en la documentación completa.
La guía larga: Logs en Node.js en producción: pino o winston
Crear cuenta, 14 días de Pro
Sin tarjeta. En pesos.