30 lines
576 B
JavaScript
30 lines
576 B
JavaScript
import log4js from "log4js";
|
|
import config from "./config.js";
|
|
|
|
const VALID_LEVELS = new Set([
|
|
"trace",
|
|
"debug",
|
|
"info",
|
|
"warn",
|
|
"error",
|
|
"fatal",
|
|
]);
|
|
|
|
/**
|
|
* LOG_LEVEL env overrides config.server.logLevel; same levels as farmcontrol-api.
|
|
*/
|
|
export function getLogLevel() {
|
|
const raw = (
|
|
process.env.LOG_LEVEL ||
|
|
config.server.logLevel ||
|
|
"info"
|
|
).toLowerCase();
|
|
return VALID_LEVELS.has(raw) ? raw : "info";
|
|
}
|
|
|
|
export function getLogger(category) {
|
|
const logger = log4js.getLogger(category);
|
|
logger.level = getLogLevel();
|
|
return logger;
|
|
}
|