¿Qué hace debug?
Guía de uso del paquete debug. Útil al añadir registros de depuración, entender espacios de nombres de logs o implementar características de depuración. Se activa con solicitudes de registro de depuración o implementación de logging.
Descripción general
El paquete debug es una utilidad de logging para Node.js que permite a los desarrolladores activar y desactivar mensajes de depuración mediante variables de entorno. Es ampliamente utilizado en la comunidad de Node.js por su simplicidad y flexibilidad.
Instalación
npm install debug
Uso básico
const debug = require('debug');
const log = debug('mi-app:servidor');
log('Iniciando servidor...');
Para habilitar los logs, establece la variable de entorno DEBUG:
DEBUG=mi-app:* node app.js
Espacios de nombres
Los espacios de nombres permiten organizar los logs por módulo o funcionalidad. Por ejemplo:
mi-app:servidor- logs del servidormi-app:base-datos- logs de la base de datosmi-app:auth- logs de autenticación
Uso de comodines
Puedes usar comodines para habilitar múltiples espacios de nombres:
DEBUG=mi-app:* node app.js # Habilita todos los logs de mi-app
DEBUG=*,-mi-app:sensible node app.js # Habilita todos excepto los sensibles
Colores
Por defecto, debug asigna colores automáticamente a los espacios de nombres. Puedes deshabilitar los colores con:
DEBUG_COLORS=no node app.js
Depuradores anidados
Puedes crear depuradores anidados para mejorar la granularidad:
const appDebug = require('debug')('mi-app');
const dbDebug = appDebug.extend('base-datos');
dbDebug('Conectando a la base de datos...');
Ejemplo completo
Crea un archivo app.js:
const debug = require('debug');
const log = debug('app:inicio');
const error = debug('app:error');
log('Inicializando aplicación...');
try {
// Simular una operación
throw new Error('Algo salió mal');
} catch (err) {
error('Error: %O', err);
}
Ejecuta con:
DEBUG=app:* node app.js