UNPKG

@adonisjs/logger

Version:

Logger built on top of pino to be used by AdonisJs

27 lines (26 loc) 1.11 kB
import type { Logger as PinoLogger } from 'pino'; import { Logger } from './logger.js'; import { LoggerConfig, LoggerManagerConfig } from './types.js'; /** * Logger manager is used to manage multiple instances of the Logger. The * loggers are created using the default config and the logger instances * are cached forever. */ export declare class LoggerManager<KnownLoggers extends Record<string, LoggerConfig>> extends Logger<LoggerConfig> { #private; constructor(config: LoggerManagerConfig<KnownLoggers>); /** * Creates an instance of the logger */ protected createLogger<K extends keyof KnownLoggers>(logger: K, config: KnownLoggers[K]): Logger<KnownLoggers[K]>; /** * Get instance of a logger */ use<K extends keyof KnownLoggers>(logger: K): Logger<KnownLoggers[K]>; use(): Logger<LoggerConfig>; /** * Create a logger instance from the config. The created instance * is not managed by the manager */ create<Config extends LoggerConfig>(config: Config, pino?: PinoLogger<keyof Config['customLevels'] & string>): Logger<Config>; }