31 lines
761 B
TypeScript
31 lines
761 B
TypeScript
import winston from "winston";
|
|
|
|
const consoleFormat = winston.format.combine(
|
|
winston.format.splat(),
|
|
winston.format.colorize(),
|
|
winston.format.timestamp({ format: "HH:mm:ss" }),
|
|
winston.format.printf(({ level, message, timestamp }) => {
|
|
return `${timestamp} ${level}: ${message}`;
|
|
})
|
|
);
|
|
|
|
const fileFormat = winston.format.combine(
|
|
winston.format.splat(),
|
|
winston.format.timestamp(),
|
|
winston.format.errors({ stack: true }),
|
|
winston.format.json()
|
|
);
|
|
|
|
export const logger = winston.createLogger({
|
|
level: "info",
|
|
transports: [
|
|
new winston.transports.Console({
|
|
format: consoleFormat,
|
|
}),
|
|
new winston.transports.File({
|
|
filename: "../data/error.jsonl",
|
|
level: "error",
|
|
format: fileFormat,
|
|
}),
|
|
],
|
|
}); |