From fc4fa88295554477111a85407b150c4be8300535 Mon Sep 17 00:00:00 2001 From: Douglas Barone Date: Tue, 22 Dec 2020 11:50:21 -0400 Subject: [PATCH] Decouple DB from console.log --- server/src/lib/logger.js | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/server/src/lib/logger.js b/server/src/lib/logger.js index 8626fc4..1025251 100644 --- a/server/src/lib/logger.js +++ b/server/src/lib/logger.js @@ -4,14 +4,7 @@ import { format, subDays } from 'date-fns' const DAYS_TO_KEEP = process.env.NODE_ENV === 'production' ? 30 : 1 async function log({ level, tags = [], message = '', data }) { - const logEntry = await prisma.log.create({ - data: { - level, - tags, - message, - data: { ...data, msg: message } - } - }) + const now = new Date() const color = { LOW: '\x1b[37m', @@ -19,15 +12,26 @@ async function log({ level, tags = [], message = '', data }) { SUCCESS: '\x1b[32m', WARNING: '\x1b[33m', ERROR: '\x1b[31m' - }[logEntry.level] + }[level] - const entryTags = logEntry.tags.length ? ` [${logEntry.tags}] ` : '' + const entryTags = tags.length ? ` [${tags}] ` : '' console.log( - `${color}[${format(logEntry.timestamp, 'HH:mm:ss')}]${entryTags}\x1b[0m${ - logEntry.message - }` + `${color}[${format(now, 'HH:mm:ss')}]${entryTags}\x1b[0m${message}` ) + try { + await prisma.log.create({ + data: { + timestamp: now, + level, + tags, + message, + data: { ...data, msg: message } + } + }) + } catch (e) { + console.log(e) + } } function logLow({ tags, message, data }) {