skedify-types
Version:
33 lines (30 loc) • 974 B
text/typescript
export interface LoggerMeta {
authentication?: {
oauthClient?: string;
userId?: string;
ip?: string;
};
correlationId?: string;
enterprise?: string;
environment?: string;
extra?: object | string;
request?: {
body?: object | string;
headers?: object | string;
url: string;
};
sessionId?: string;
error?: Error;
}
export type LogLevel = "trace" | "debug" | "info" | "warn" | "error" | "fatal" | "emerg";
export interface Logger {
log: (level: LogLevel, message: string, meta?: LoggerMeta) => void;
trace: (message: string, meta?: LoggerMeta) => void;
debug: (message: string, meta?: LoggerMeta) => void;
info: (message: string, meta?: LoggerMeta) => void;
warn: (message: string, meta?: LoggerMeta) => void;
error: (message: string, meta?: LoggerMeta) => void;
fatal: (message: string, meta?: LoggerMeta) => void;
emerg: (message: string, meta?: LoggerMeta) => void;
child: (childMeta?: LoggerMeta) => Logger;
}