2020-04-12 18:27:01 +02:00
|
|
|
import { createLogger, format, transports } from 'winston';
|
2020-04-14 08:25:58 +02:00
|
|
|
import getConfig from 'next/config';
|
|
|
|
|
2020-06-13 11:46:20 +02:00
|
|
|
const { serverRuntimeConfig = {} } = getConfig() || {};
|
2020-05-23 14:46:47 +02:00
|
|
|
const { logLevel } = serverRuntimeConfig;
|
2020-05-19 07:50:16 +02:00
|
|
|
|
2020-06-13 11:46:20 +02:00
|
|
|
const combinedFormat = format.combine(
|
|
|
|
format.label({ label: 'THUB' }),
|
|
|
|
format.splat(),
|
|
|
|
format.colorize(),
|
|
|
|
format.timestamp({ format: 'YYYY-MM-DD HH:mm:ss' }),
|
|
|
|
format.printf(
|
|
|
|
(info: any) =>
|
|
|
|
`${info.timestamp} ${info.level} [${info.label}]: ${info.message}`
|
|
|
|
)
|
|
|
|
);
|
2020-04-12 18:27:01 +02:00
|
|
|
|
|
|
|
export const logger = createLogger({
|
2020-05-23 14:46:47 +02:00
|
|
|
level: logLevel,
|
2020-04-12 18:27:01 +02:00
|
|
|
format: combinedFormat,
|
|
|
|
transports: [new transports.Console()],
|
2020-06-13 11:46:20 +02:00
|
|
|
silent: process.env.NODE_ENV === 'test' ? true : false,
|
2020-04-12 18:27:01 +02:00
|
|
|
});
|