# trentm/node-bunyan

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/trentm-node-bunyan).**

7,212 stars · 504 forks · JavaScript · NOASSERTION

## Links

- GitHub: https://github.com/trentm/node-bunyan
- awesome-repositories: https://awesome-repositories.com/repository/trentm-node-bunyan.md

## Description

This project is a structured logging framework and library for Node.js applications. It produces machine-readable log records in JSON format with tiered severity levels, ensuring consistent parsing and centralized storage.

The system includes a log stream manager for routing records to multiple destinations, such as files and consoles, and a command line interface for filtering, formatting, and visualizing raw JSON log streams. It supports the creation of child loggers that inherit parent configurations and merge additional contextual metadata.

The framework covers a broad range of operational capabilities, including time-based file rotation for disk management, in-memory ring buffers for post-mortem retrieval, and the exposure of internal logging events as DTrace probes for real-time runtime observation. It also provides dynamic call-site introspection to attach source location metadata to logs.

## Tags

### Software Engineering & Architecture

- [Structured JSON Loggers](https://awesome-repositories.com/f/software-engineering-architecture/event-logging/structured-json-loggers.md) — Generates machine-readable log records as JSON objects to ensure consistent parsing across analysis tools.
- [Ring Buffers](https://awesome-repositories.com/f/software-engineering-architecture/queue-implementations/ring-buffers.md) — Maintains a fixed-size circular buffer of recent log entries for fast post-mortem retrieval.
- [Log Entry Filters](https://awesome-repositories.com/f/software-engineering-architecture/stream-element-folding/distinct-element-filtering/predicate-based-filters/log-entry-filters.md) — Implements predicate-based logic to filter log entries using JavaScript expressions during CLI processing.

### Programming Languages & Runtimes

- [Node.js Logging Libraries](https://awesome-repositories.com/f/programming-languages-runtimes/node-js-logging-libraries.md) — A comprehensive logging framework designed specifically for the Node.js runtime environment.
- [Log Stream Routers](https://awesome-repositories.com/f/programming-languages-runtimes/node-js-logging-libraries/log-stream-routers.md) — Routes log records to multiple destinations including files, consoles, and external data streams.

### System Administration & Monitoring

- [Inherited Logger Hierarchies](https://awesome-repositories.com/f/system-administration-monitoring/log-management/logger-hierarchies/independent-logger-instances/contextual-logger-instances/inherited-logger-hierarchies.md) — Supports child loggers that inherit parent configurations and merge additional contextual metadata.
- [Log Stream Management](https://awesome-repositories.com/f/system-administration-monitoring/log-stream-management.md) — Routes log data to multiple destinations and manages disk space through automatic log rotation.
- [Stream Routing](https://awesome-repositories.com/f/system-administration-monitoring/logging-and-telemetry/metric-data-ingestion/stream-routing.md) — Routes log records to multiple independent writeable streams with individual severity thresholds.
- [Structured Logging Frameworks](https://awesome-repositories.com/f/system-administration-monitoring/structured-logging-frameworks.md) — Implements a structured logging framework that generates machine-readable logs with contextual metadata.
- [Log Analysis Tools](https://awesome-repositories.com/f/system-administration-monitoring/log-analysis-tools.md) — Provides a CLI tool for filtering, formatting, and visualizing raw JSON log streams.
- [DTrace Probe Integrations](https://awesome-repositories.com/f/system-administration-monitoring/logger-integrations/dtrace-probe-integrations.md) — Exposes internal logging events as system probes for real-time runtime observation.
- [Application-Level Probes](https://awesome-repositories.com/f/system-administration-monitoring/logging-and-telemetry/dynamic-binary-instrumentation/dynamic-kernel-probes/user-defined-probes/application-level-probes.md) — Exposes internal logging events as application-level probes for real-time observation via DTrace.
- [Log Analysis](https://awesome-repositories.com/f/system-administration-monitoring/logging-and-telemetry/log-analysis.md) — Provides a command line interface to filter, format, and visualize raw JSON log files.

### Development Tools & Productivity

- [Runtime Call-Stack Capturers](https://awesome-repositories.com/f/development-tools-productivity/call-stack-navigators/runtime-call-stack-capturers.md) — Extracts filename and line number from the execution stack to provide source location metadata.
- [Runtime Debugging](https://awesome-repositories.com/f/development-tools-productivity/debugging-profiling-testing/debugging-diagnostics/debugging-inspection-tools/debugging-and-inspection-tools/runtime-debugging.md) — Facilitates real-time process observation using DTrace probes and post-mortem analysis via ring buffers.
- [Log File Rotators](https://awesome-repositories.com/f/development-tools-productivity/file-content-appenders/data-appending/log-file-rotators.md) — Manages disk usage by cycling log files based on defined time intervals and backup counts.

### Part of an Awesome List

- [Logging](https://awesome-repositories.com/f/awesome-lists/devops/logging.md) — JSON logging module.
