X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Futils%2FLogger.ts;h=d48659f4bbaea774db5c32b2f44ff784eeaa8245;hb=34eeb1fb097b9eda12531ff9024d2f9c0e627a28;hp=95d5347da47f12f708f003e5a43df5d36a16ec19;hpb=17e9e8cef1f7d1cbc4ec6aa4c95d8f3d93c593a6;p=e-mobility-charging-stations-simulator.git diff --git a/src/utils/Logger.ts b/src/utils/Logger.ts index 95d5347d..d48659f4 100644 --- a/src/utils/Logger.ts +++ b/src/utils/Logger.ts @@ -1,31 +1,35 @@ -import type { Format } from 'logform'; -import { Logger, createLogger, format, transport } from 'winston'; -import DailyRotateFile from 'winston-daily-rotate-file'; +import type { FormatWrap } from 'logform'; +import { type Logger, createLogger, format, type transport } from 'winston'; import TransportType from 'winston/lib/winston/transports/index.js'; +import DailyRotateFile from 'winston-daily-rotate-file'; -import Configuration from './Configuration'; -import Utils from './Utils'; +// import { Configuration, Utils } from './internal'; +import { Configuration } from './Configuration'; +import { Utils } from './Utils'; let transports: transport[]; -if (Configuration.getLogRotate()) { +if (Configuration.getLogRotate() === true) { const logMaxFiles = Configuration.getLogMaxFiles(); + const logMaxSize = Configuration.getLogMaxSize(); transports = [ new DailyRotateFile({ filename: Utils.insertAt( Configuration.getLogErrorFile(), '-%DATE%', - Configuration.getLogErrorFile().indexOf('.log') + Configuration.getLogErrorFile()?.indexOf('.log') ), level: 'error', - maxFiles: logMaxFiles, + ...(logMaxFiles && { maxFiles: logMaxFiles }), + ...(logMaxSize && { maxSize: logMaxSize }), }), new DailyRotateFile({ filename: Utils.insertAt( Configuration.getLogFile(), '-%DATE%', - Configuration.getLogFile().indexOf('.log') + Configuration.getLogFile()?.indexOf('.log') ), - maxFiles: logMaxFiles, + ...(logMaxFiles && { maxFiles: logMaxFiles }), + ...(logMaxSize && { maxSize: logMaxSize }), }), ]; } else { @@ -37,7 +41,7 @@ if (Configuration.getLogRotate()) { const logger: Logger = createLogger({ level: Configuration.getLogLevel(), - format: format.combine(format.splat(), (format[Configuration.getLogFormat()] as () => Format)()), + format: format.combine(format.splat(), (format[Configuration.getLogFormat()] as FormatWrap)()), transports, }); @@ -50,10 +54,10 @@ if (Configuration.getLogConsole()) { new TransportType.Console({ format: format.combine( format.splat(), - (format[Configuration.getLogFormat()] as () => Format)() + (format[Configuration.getLogFormat()] as FormatWrap)() ), }) ); } -export default logger; +export { logger };