nope/lib/logger/getLogger.ts

38 lines
1.0 KiB
TypeScript
Raw Normal View History

2020-11-06 08:10:30 +00:00
/**
* @author Martin Karkowski
* @email m.karkowski@zema.de
* @create date 2020-11-06 08:54:35
2021-10-18 06:02:46 +00:00
* @modify date 2021-10-17 14:01:45
2020-11-06 08:10:30 +00:00
* @desc [description]
*/
2021-10-18 06:02:46 +00:00
import { ILogger } from "js-logger";
2020-11-23 06:09:31 +00:00
import { getSingleton } from "../helpers/singletonMethod";
import { LoggerLevel, NopeLogger } from "./nopeLogger";
2020-11-06 08:10:30 +00:00
/**
2020-11-06 13:17:47 +00:00
* Function to extract a Singleton Dispatcher
* @param options The provided options for the Dispatcher
2020-11-06 08:10:30 +00:00
*/
2021-10-18 06:02:46 +00:00
export function getCentralNopeLogger(): NopeLogger {
2020-11-23 06:09:31 +00:00
const container = getSingleton("nopeBackendLogger.instance", () => {
2020-11-06 13:17:47 +00:00
return new NopeLogger();
});
2020-08-25 22:11:26 +00:00
2020-11-23 06:09:31 +00:00
return container.instance;
2020-08-25 22:11:26 +00:00
}
2020-11-06 08:10:30 +00:00
/**
* Helper Function, to create a Logger.
2021-05-21 17:21:53 +00:00
* Therefore it uses a specific Level and a Lable of the
2020-11-06 08:10:30 +00:00
* Logger
*
* @export
* @param {LoggerLevel} level The Level, which should be rendered
* @param {string} [label=''] An Lable for the Logger. Every Message beginns with that lable.
* @return {*} Returns a Logger.
*/
2021-10-18 06:02:46 +00:00
export function getNopeLogger(name: string, level?: LoggerLevel): ILogger {
2020-11-06 13:17:47 +00:00
return getCentralNopeLogger().getLogger(name, level);
2021-05-21 17:21:53 +00:00
}