Легкий JSONL логер з форматерами для VictoriaLogs, Google Cloud Logging та інших.
Пакет jsonl-logger — це легкий структурований логер, який виводить JSON Lines — один JSON-об’єкт на рядок. Він працює в Bun, Node.js, Deno та браузерах без жодних залежностей, що робить його універсальним рішенням для будь-якого JavaScript-рантайму.
Основна ідея проста: структуровані логи набагато легше парсити, фільтрувати й аналізувати, ніж звичайний текст. Кожен запис — це валідний JSON-об’єкт з часовою міткою, рівнем важливості, повідомленням та довільними метаданими. Логер підтримує стандартні рівні (debug, info, warn, error) і може перехоплювати виклики console.* для збору виводу сторонніх бібліотек.
import { logger } from 'jsonl-logger'
logger.info('Server started', { port: 3000 })
logger.log('Neutral message', { note: 'no level icon' })
logger.error('Request failed', { path: '/api' }, new Error('timeout'))
Гнучкість забезпечує система форматерів, що підключаються. Вбудовані форматери перетворюють вивід логів відповідно до очікуваної схеми Google Cloud Logging (GCL), VictoriaLogs або будь-якого іншого формату. Також є підтримка OpenTelemetry trace context для кореляції логів з розподіленими трейсами.
Логер спроектований так, щоб не заважати — базове використання не потребує конфігурації, але кожен аспект можна налаштувати за потреби.