# pinojs/pino

**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/pinojs-pino).**

17,941 stars · 961 forks · JavaScript · MIT

## Links

- GitHub: https://github.com/pinojs/pino
- Homepage: http://getpino.io
- awesome-repositories: https://awesome-repositories.com/repository/pinojs-pino.md

## Topics

`fast` `json` `logger` `nodejs` `pino`

## Description

Pino is a high-performance logging library for Node.js applications designed to minimize overhead and prevent blocking the main event loop. It generates machine-readable logs using newline-delimited JSON, facilitating efficient ingestion and analysis by external monitoring and log aggregation platforms.

The library distinguishes itself by offloading log processing and formatting to worker threads, ensuring that heavy logging tasks do not impact application responsiveness. It also provides a decoupled command-line utility that transforms structured production logs into human-readable text, simplifying the debugging process during local development.

Beyond its core logging capabilities, the project supports contextual service observability through the creation of hierarchical child loggers. These instances inherit configuration from a parent while allowing for the automatic injection of specific metadata into log entries, enabling developers to track related events across complex services.

## Tags

### Development Tools & Productivity

- [Node.js Development Utilities](https://awesome-repositories.com/f/development-tools-productivity/node-js-development-utilities.md) — Provides a high-performance logging library for Node.js that outputs newline-delimited JSON to minimize overhead.
- [Blocking Task Offloaders](https://awesome-repositories.com/f/development-tools-productivity/task-execution/blocking-task-offloaders.md) — Delegates log transmission and formatting to worker threads to prevent blocking the main application event loop. ([source](https://cdn.jsdelivr.net/gh/pinojs/pino@main/README.md))
- [Console Log Formatters](https://awesome-repositories.com/f/development-tools-productivity/local-development-environments/console-log-formatters.md) — Transforms structured logs into human-readable console output during local development to improve debugging speed. ([source](https://cdn.jsdelivr.net/gh/pinojs/pino@main/README.md))

### Web Development

- [Logging Libraries](https://awesome-repositories.com/f/web-development/backend-development/web-frameworks/node-js-server-frameworks/logging-libraries.md) — Implements high-performance logging for Node.js applications to track system activity without impacting event loop responsiveness.

### System Administration & Monitoring

- [Asynchronous Logging](https://awesome-repositories.com/f/system-administration-monitoring/asynchronous-logging.md) — Offloads log processing and formatting to worker threads to maintain low-latency application performance.
- [Structured Logging Frameworks](https://awesome-repositories.com/f/system-administration-monitoring/structured-logging-frameworks.md) — Generates machine-readable JSON logs to facilitate efficient parsing and analysis by external monitoring and aggregation platforms. ([source](https://cdn.jsdelivr.net/gh/pinojs/pino@main/README.md))
- [Contextual Logging](https://awesome-repositories.com/f/system-administration-monitoring/contextual-logging.md) — Supports hierarchical child loggers that automatically inject metadata to maintain clear context across complex services.
- [Logger Hierarchies](https://awesome-repositories.com/f/system-administration-monitoring/log-management/logger-hierarchies.md) — Supports hierarchical child loggers that inherit configuration and metadata from a parent instance.

### Software Engineering & Architecture

- [Background Thread Dispatchers](https://awesome-repositories.com/f/software-engineering-architecture/background-thread-dispatchers.md) — Offloads log formatting and transmission to background worker threads to keep the main application event loop responsive.

### Part of an Awesome List

- [Logging](https://awesome-repositories.com/f/awesome-lists/devops/logging.md) — High-performance JSON logger.
- [Logging](https://awesome-repositories.com/f/awesome-lists/devtools/logging.md) — High-performance logger for Node.js applications.

### Data & Databases

- [Log Formatters](https://awesome-repositories.com/f/data-databases/data-serialization-formats/data-formats/json/log-formatters.md) — Generates machine-readable JSON logs that integrate directly with external log aggregation and analysis platforms.
- [JSON Serialization](https://awesome-repositories.com/f/data-databases/data-serialization-formats/json-serialization.md) — Encodes log entries as newline-delimited JSON objects to facilitate efficient streaming and parsing by external analysis tools.
