From 410096398dd47efdf586e75012f2a7178d482313 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Syn=C3=A1=C4=8Dek?= Date: Fri, 17 Jul 2020 21:34:52 +0200 Subject: [PATCH] separate utilities for logs --- lib/index.js | 2 +- lib/log-utils.js | 37 +++++++++++++++++++++++++++++++++++++ lib/middlewares.js | 3 ++- lib/utils.js | 32 -------------------------------- 4 files changed, 40 insertions(+), 34 deletions(-) create mode 100644 lib/log-utils.js diff --git a/lib/index.js b/lib/index.js index bd61ce4..5dec780 100644 --- a/lib/index.js +++ b/lib/index.js @@ -13,7 +13,7 @@ const { createRouteLogger, createErrorLogger, } = require('./middlewares') -const { createAppLogger } = require('./utils') +const { createAppLogger } = require('./log-utils') const port = process.env.PORT const certEndpoint = process.env.CERT_ENDPOINT || '' diff --git a/lib/log-utils.js b/lib/log-utils.js new file mode 100644 index 0000000..8d55d4e --- /dev/null +++ b/lib/log-utils.js @@ -0,0 +1,37 @@ +const path = require('path') +const winston = require('winston') +require('winston-daily-rotate-file') + +const createDailyRotateLogFileTransport = () => { + const transport = new (winston.transports.DailyRotateFile)({ + filename: path.join(__dirname, '..', 'logs', 'app-%DATE%.log'), + datePattern: 'YYYY-MM-DD', + zippedArchive: false, + maxSize: '20m', + maxFiles: '14d', + }) + + return transport +} + +const createTransports = (dev) => { + return [ + dev && new winston.transports.Console(), + createDailyRotateLogFileTransport(), + ].filter(transport => transport) +} + +const createAppLogger = ({ dev }) => { + return winston.createLogger({ + transports: createTransports(dev), + format: winston.format.combine( + winston.format.timestamp(), + winston.format.json() + ), + }) +} + +module.exports = { + createTransports, + createAppLogger, +} diff --git a/lib/middlewares.js b/lib/middlewares.js index 1657912..d2a8994 100644 --- a/lib/middlewares.js +++ b/lib/middlewares.js @@ -1,7 +1,8 @@ const winston = require('winston') const expressWinston = require('express-winston') const path = require('path') -const { checkValidURL, createTransports } = require('./utils') +const { checkValidURL } = require('./utils') +const { createTransports } = require('./log-utils') const MissingURLParameter = () => new Error('Please provide valid URL or event number.') const sendJSON = (req) => { diff --git a/lib/utils.js b/lib/utils.js index 2c7c90a..c9d6dbd 100644 --- a/lib/utils.js +++ b/lib/utils.js @@ -1,6 +1,4 @@ const dayjs = require('dayjs') -const winston = require('winston') -require('winston-daily-rotate-file') const path = require('path') const checkValidURL = (url) => { @@ -55,34 +53,6 @@ const getNormalizedUrl = (URLparameter) => { return mobileUrl } -const createDailyRotateLogFileTransport = () => { - const transport = new (winston.transports.DailyRotateFile)({ - filename: path.join(__dirname, '..', 'logs', 'app-%DATE%.log'), - datePattern: 'YYYY-MM-DD', - zippedArchive: false, - maxSize: '20m', - maxFiles: '14d', - }) - - return transport -} - -const createTransports = (dev) => { - return [ - dev && new winston.transports.Console(), - createDailyRotateLogFileTransport(), - ].filter(transport => transport) -} - -const createAppLogger = ({ dev }) => { - return winston.createLogger({ - transports: createTransports(dev), - format: winston.format.combine( - winston.format.timestamp(), - winston.format.json() - ), - }) -} module.exports = { checkValidURL, @@ -92,6 +62,4 @@ module.exports = { createMobileURL, createURL, getNormalizedUrl, - createAppLogger, - createTransports, }