All Projects → pinojs → Pino

pinojs / Pino

Licence: other
🌲 super fast, all natural json logger

Programming Languages

javascript
184084 projects - #8 most used programming language
typescript
32286 projects
HTML
75241 projects

Projects that are alternatives of or similar to Pino

mini-async-log-c
Mini async log C port. Now with C++ wrappers.
Stars: ✭ 69 (-99.19%)
Mutual labels:  fast, logger
pino-caller
🌲 Include call site of pino log messages
Stars: ✭ 35 (-99.59%)
Mutual labels:  logger, pino
node-perj
A fast, flexible JSON logger.
Stars: ✭ 16 (-99.81%)
Mutual labels:  fast, logger
Borer
Efficient CBOR and JSON (de)serialization in Scala
Stars: ✭ 131 (-98.45%)
Mutual labels:  json, fast
Tslog
📝 tslog - Expressive TypeScript Logger for Node.js.
Stars: ✭ 321 (-96.21%)
Mutual labels:  json, logger
Xlog
Android logger, pretty, powerful and flexible, log to everywhere, save to file, all you want is here.
Stars: ✭ 2,468 (-70.88%)
Mutual labels:  json, logger
ptkdev-logger
🦒 Beautiful Logger for Node.js: the best alternative to the console.log statement
Stars: ✭ 117 (-98.62%)
Mutual labels:  logger, pino
Zzzjson
The fastest JSON parser written in pure C
Stars: ✭ 66 (-99.22%)
Mutual labels:  json, fast
Json Schema Validator
A fast Java JSON schema validator that supports draft V4, V6, V7 and V2019-09
Stars: ✭ 292 (-96.55%)
Mutual labels:  json, fast
Ojg
Optimized JSON for Go
Stars: ✭ 281 (-96.68%)
Mutual labels:  json, fast
Plug logger json
Elixir Plug that formats http request logs as json
Stars: ✭ 125 (-98.53%)
Mutual labels:  json, logger
Airframe
Essential Building Blocks for Scala
Stars: ✭ 442 (-94.78%)
Mutual labels:  json, logger
Tabtoy
高性能表格数据导出器
Stars: ✭ 1,302 (-84.64%)
Mutual labels:  json, fast
Json
A C++11 or library for parsing and serializing JSON to and from a DOM container in memory.
Stars: ✭ 205 (-97.58%)
Mutual labels:  json, fast
Fastjson
Fast JSON parser and validator for Go. No custom structs, no code generation, no reflection
Stars: ✭ 1,164 (-86.27%)
Mutual labels:  json, fast
BaseDevelop
an android project for now fashion open source framework
Stars: ✭ 24 (-99.72%)
Mutual labels:  fast, logger
Apicache
Simple API-caching middleware for Express/Node.
Stars: ✭ 957 (-88.71%)
Mutual labels:  json, fast
Fast Xml Parser
Validate XML, Parse XML to JS/JSON and vise versa, or parse XML to Nimn rapidly without C/C++ based libraries and no callback
Stars: ✭ 1,021 (-87.95%)
Mutual labels:  json, fast
Rz Go
Ripzap - Fast and 0 allocs leveled JSON logger for Go ⚡️. Dependency free.
Stars: ✭ 256 (-96.98%)
Mutual labels:  json, fast
Onelog
Dead simple, super fast, zero allocation and modular logger for Golang
Stars: ✭ 389 (-95.41%)
Mutual labels:  logger, fast

banner

pino

npm version Build Status Known Vulnerabilities js-standard-style

Very low overhead Node.js logger.

Documentation

Install

$ npm install pino

If you would like to install pino v6, refer to https://github.com/pinojs/pino/tree/v6.x.

Usage

const logger = require('pino')()

logger.info('hello world')

const child = logger.child({ a: 'property' })
child.info('hello child!')

This produces:

{"level":30,"time":1531171074631,"msg":"hello world","pid":657,"hostname":"Davids-MBP-3.fritz.box"}
{"level":30,"time":1531171082399,"msg":"hello child!","pid":657,"hostname":"Davids-MBP-3.fritz.box","a":"property"}

For using Pino with a web framework see:

Essentials

Development Formatting

The pino-pretty module can be used to format logs during development:

pretty demo

Transports & Log Processing

Due to Node's single-threaded event-loop, it's highly recommended that sending, alert triggering, reformatting and all forms of log processing be conducted in a separate process or thread.

In Pino terminology we call all log processors "transports", and recommend that the transports be run in a worker thread using our pino.transport API.

For more details see our Transports⇗ document.

Low overhead

Using minimum resources for logging is very important. Log messages tend to get added over time and this can lead to a throttling effect on applications – such as reduced requests per second.

In many cases, Pino is over 5x faster than alternatives.

See the Benchmarks document for comparisons.

Bundling support

Pino supports to being bundled using tools like webpack or esbuild.

See Bundling document for more informations.

The Team

Matteo Collina

https://github.com/pinojs

https://www.npmjs.com/~matteo.collina

https://twitter.com/matteocollina

David Mark Clements

https://github.com/davidmarkclements

https://www.npmjs.com/~davidmarkclements

https://twitter.com/davidmarkclem

James Sumners

https://github.com/jsumners

https://www.npmjs.com/~jsumners

https://twitter.com/jsumners79

Thomas Watson Steen

https://github.com/watson

https://www.npmjs.com/~watson

https://twitter.com/wa7son

Contributing

Pino is an OPEN Open Source Project. This means that:

Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project.

See the CONTRIBUTING.md file for more details.

Acknowledgements

This project was kindly sponsored by nearForm.

Logo and identity designed by Cosmic Fox Design: https://www.behance.net/cosmicfox.

License

Licensed under MIT.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].