From 811ff6d23eb1fc17a9e8045ce5ee6d501cfbb33a Mon Sep 17 00:00:00 2001 From: Ruslan <11838981+feedmeapples@users.noreply.github.com> Date: Tue, 20 Jul 2021 14:59:05 -0700 Subject: [PATCH] Add timestamp to console log (#363) * Create custom logger with timestamps --- server/index.js | 5 +++-- server/logger.js | 14 ++++++++++++++ server/temporal-client/helpers.js | 3 ++- server/tls/tls.js | 9 +++++---- 4 files changed, 24 insertions(+), 7 deletions(-) create mode 100644 server/logger.js diff --git a/server/index.js b/server/index.js index b94a2b39..de38d070 100644 --- a/server/index.js +++ b/server/index.js @@ -9,7 +9,8 @@ const Koa = require('koa'), passport = require('passport'), csrf = require('koa-csrf'), auth = require('./auth'), - { securityHeaders } = require('./middlewares'); + { securityHeaders } = require('./middlewares'), + logger = require('./logger'); app.webpackConfig = require('../webpack.config'); @@ -45,7 +46,7 @@ app.init = function(options) { options.logErrors !== false && (typeof err.statusCode !== 'number' || err.statusCode >= 500) ) { - console.error(err); + logger.error(err); } ctx.status = err.statusCode || err.status || 500; ctx.body = { message: err.message }; diff --git a/server/logger.js b/server/logger.js new file mode 100644 index 00000000..096e7062 --- /dev/null +++ b/server/logger.js @@ -0,0 +1,14 @@ +const timeStamp = () => '[' + new Date().toISOString() + ']'; + +const withTimestamp = (fn, ...args) => { + return fn.call(null, timeStamp(), ...args); +}; + +const logger = { + log: (...args) => withTimestamp(console.log, ...args), + warn: (...args) => withTimestamp(console.warn, ...args), + error: (...args) => withTimestamp(console.error, ...args), + debug: (...args) => withTimestamp(console.debug, ...args), +}; + +module.exports = logger; diff --git a/server/temporal-client/helpers.js b/server/temporal-client/helpers.js index 485e772a..cec70754 100644 --- a/server/temporal-client/helpers.js +++ b/server/temporal-client/helpers.js @@ -1,6 +1,7 @@ const Long = require('long'); const losslessJSON = require('lossless-json'); const moment = require('moment'); +const logger = require('../logger') function buildHistory(getHistoryRes) { const history = getHistoryRes.history; @@ -130,7 +131,7 @@ function uiTransform(item, rawPayloads = false, transformingPayloads = false) { payloads = [...payloads, data]; } catch (error) { - console.log( + logger.log( `Unable to process payload. Encoding: ${encoding}, data: ${data}. ${error}` ); payloads = [...payloads, data.toString()]; diff --git a/server/tls/tls.js b/server/tls/tls.js index de4c94e7..e8f22f6a 100644 --- a/server/tls/tls.js +++ b/server/tls/tls.js @@ -3,6 +3,7 @@ const { readCredsFromCertFiles } = require('./read-creds-from-cert-files'); const { readCredsFromConfig } = require('./read-creds-from-config'); const { compareCaseInsensitive } = require('../utils'); const { getTlsConfig } = require('../config'); +const logger = require('../logger') const keyPath = process.env.TEMPORAL_TLS_KEY_PATH; const certPath = process.env.TEMPORAL_TLS_CERT_PATH; @@ -14,7 +15,7 @@ const verifyHost = [true, 'true', undefined].includes( const tlsConfigFile = getTlsConfig() function getCredentials() { if (keyPath !== undefined && certPath !== undefined) { - console.log('establishing secure connection using TLS cert files...'); + logger.log('establishing secure connection using TLS cert files...'); const { pk, cert, ca } = readCredsFromCertFiles({ keyPath, certPath, @@ -22,17 +23,17 @@ function getCredentials() { }); return createSecure(pk, cert, ca, serverName, verifyHost); } else if (caPath !== undefined) { - console.log('establishing server-side TLS connection using only TLS CA file...'); + logger.log('establishing server-side TLS connection using only TLS CA file...'); const { ca } = readCredsFromCertFiles({ caPath }); return createSecure(undefined, undefined, ca, serverName, verifyHost); } else if (tlsConfigFile.key) { - console.log( + logger.log( 'establishing secure connection using TLS yml configuration...' ); const { pk, cert, ca, serverName, verifyHost } = readCredsFromConfig(); return createSecure(pk, cert, ca, serverName, verifyHost); } else { - console.log('establishing insecure connection...'); + logger.log('establishing insecure connection...'); return { credentials: grpc.credentials.createInsecure(), options: {} }; } }