From 54ee6554725aca504ca6ac22e1f4c0813b2302d4 Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Wed, 1 Mar 2017 17:00:27 +0000 Subject: [PATCH] Log error stack traces if verbose flag is set --- red/runtime/log.js | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/red/runtime/log.js b/red/runtime/log.js index d2e28726e..259ae4000 100644 --- a/red/runtime/log.js +++ b/red/runtime/log.js @@ -44,6 +44,8 @@ var levelNames = { var logHandlers = []; +var verbose; + var metricsEnabled = false; var LogHandler = function(settings) { @@ -72,11 +74,15 @@ var consoleLogger = function(msg) { if (msg.level == log.METRIC || msg.level == log.AUDIT) { util.log("["+levelNames[msg.level]+"] "+JSON.stringify(msg)); } else { - var message = msg.msg; - if (typeof message === 'object' && message.toString() === '[object Object]' && message.message) { - message = message.message; + if (verbose && msg.msg.stack) { + util.log("["+levelNames[msg.level]+"] "+(msg.type?"["+msg.type+":"+(msg.name||msg.id)+"] ":"")+msg.msg.stack); + } else { + var message = msg.msg; + if (typeof message === 'object' && message.toString() === '[object Object]' && message.message) { + message = message.message; + } + util.log("["+levelNames[msg.level]+"] "+(msg.type?"["+msg.type+":"+(msg.name||msg.id)+"] ":"")+message); } - util.log("["+levelNames[msg.level]+"] "+(msg.type?"["+msg.type+":"+(msg.name||msg.id)+"] ":"")+message); } } @@ -94,6 +100,7 @@ var log = module.exports = { metricsEnabled = false; logHandlers = []; var loggerSettings = {}; + verbose = settings.verbose; if (settings.logging) { var keys = Object.keys(settings.logging); if (keys.length === 0) {