UNPKG

@project-sunbird/logger

Version:
33 lines (32 loc) 1.03 kB
import { QueryOptions } from 'winston'; export type logLevels = 'error' | 'warn' | 'info' | 'debug'; export type defaultAdopters = 'console' | 'winston'; export interface IClassLoggerOptions extends IMethodLoggerOptions { logMethods?: string[]; } export interface IMethodLoggerOptions { logLevel: logLevels; logTime: boolean; } export interface ILoggerConfig extends ILogAdopterConfig { adopterConfig: { adopter: defaultAdopters | LogAdopter; }; } export interface ILogAdopterConfig { logBasePath: string; logLevel: logLevels; context: any; } export declare abstract class LogAdopter { abstract logger: ILogger; abstract initialize(config: ILogAdopterConfig): boolean; abstract enableDebugMode(timeInterval: number, logLevel: logLevels, combineLogs: boolean): boolean; abstract getLogs?(options: QueryOptions): any; } export interface ILogger { error(...arg: any[]): void; warn(...arg: any[]): void; info(...arg: any[]): void; debug(...arg: any[]): void; }