refactor: pipeline run log

This commit is contained in:
xiaojunnuo
2022-10-28 16:08:12 +08:00
parent 25d5a99b3d
commit 3dfdd3c31c
24 changed files with 381 additions and 153 deletions
+32 -4
View File
@@ -1,6 +1,34 @@
import log4js from "log4js";
import log4js, { Appender, Logger, LoggingEvent } from "log4js";
const OutputAppender = {
configure: (config: any, layouts: any, findAppender: any, levels: any) => {
let layout = layouts.colouredLayout;
if (config.layout) {
layout = layouts.layout(config.layout.type, config.layout);
}
function customAppender(layout: any, timezoneOffset: any) {
return (loggingEvent: LoggingEvent) => {
if (loggingEvent.context.outputHandler?.write) {
const text = `${layout(loggingEvent, timezoneOffset)}\n`;
loggingEvent.context.outputHandler.write(text);
}
};
}
return customAppender(layout, config.timezoneOffset);
},
};
// @ts-ignore
log4js.configure({
appenders: { std: { type: "stdout" } },
categories: { default: { appenders: ["std"], level: "info" } },
appenders: { std: { type: "stdout" }, output: { type: OutputAppender } },
categories: { default: { appenders: ["std"], level: "info" }, pipeline: { appenders: ["std", "output"], level: "info" } },
});
export const logger = log4js.getLogger("pipeline");
export const logger = log4js.getLogger("default");
export function buildLogger(write: (text: string) => void) {
const logger = log4js.getLogger("pipeline");
logger.addContext("outputHandler", {
write,
});
return logger;
}