Internal
Use PinoLogger.create instead. Exists so
PinoLogger.child can return ILogger instances.
Minimum log level
Pre-constructed Pino instance
Optionalredaction: IRedactionServiceReturns a child logger backed by Pino's native child().
Metadata merged into every child entry
A new child logger
Logs at debug severity.
Log message
Optionalmetadata: Readonly<Record<string, unknown>>
Structured context
Logs at error severity.
Log message
Optionalmetadata: Readonly<Record<string, unknown>>
Structured context
Logs at fatal severity.
Log message
Optionalmetadata: Readonly<Record<string, unknown>>
Structured context
Logs at info severity.
Log message
Optionalmetadata: Readonly<Record<string, unknown>>
Structured context
Logs at trace severity.
Log message
Optionalmetadata: Readonly<Record<string, unknown>>
Structured context
Logs at warn severity.
Log message
Optionalmetadata: Readonly<Record<string, unknown>>
Structured context
StaticcreateAsynchronously creates a PinoLogger.
When pinoFactory is provided in options, the factory is called
synchronously and no import is performed. Otherwise, Pino is loaded
via await import('pino').
Configuration
A new PinoLogger instance
Structured logger backed by Pino.
Because the
pinoimport is async, usePinoLogger.create(async factory) rather thannew. An injectedpinoFactoryoption allows synchronous construction for tests.Example: Async construction (real Pino)
Example: Injected factory (tests)
Since
0.1.0