Better name for Logging Levels
23 March 2021I find logging levels quite difficult to understand and use. What’s informative? versus what is a warning?
I’ve seen this naming scheme somewhere a while ago, (ref required), I wished this was more common:
export const makeLogger = (name: string) => {
const prefix = `[${name}]`;
return {
inTestEnv: (msg: string, ...args: any[]) =>
console.debug(`${prefix}: ${msg}`, ...args),
inProdEnv: (msg: string, ...args: any[]) =>
console.info(`${prefix}: ${msg}`, ...args),
toInvestigateTomorrow: (msg: string, ...args: any[]) =>
console.warn(`${prefix}: ${msg}`, ...args),
wakeMeUpInTheMiddleOfTheNight: (msg: string, ...args: any[]) =>
console.error(`${prefix}: ${msg}`, ...args),
makeLogger: (subName: string) => makeLogger(`${name}.${subName}`),
};
};
Laurent Senta
I wrote software for large distributed systems, web applications, and even robots.
These days I focus on making developers, creators, and humans more productive through IPDX.co.