electron-97: refactored the code as per the ticket (point 5 i.e. local logging covered)

This commit is contained in:
Vishwas Shashidhar 2017-08-24 16:52:32 +05:30
parent d566e38b6a
commit 1819b7f82d
2 changed files with 39 additions and 0 deletions

View File

@ -1,6 +1,10 @@
'use strict';
const electronLog = require('electron-log');
const getCmdLineArg = require('./utils/getCmdLineArg.js');
const { isDevEnv } = require('./utils/misc');
const logLevels = require('./enums/logLevels.js');
const MAX_LOG_QUEUE_LENGTH = 100;
@ -12,6 +16,9 @@ class Logger {
// holds log messages received before logger has been registered.
this.logQueue = [];
// Initializes the local logger
initializeLocalLogger();
}
/**
@ -26,6 +33,10 @@ class Logger {
return;
}
if (isDevEnv) {
logLocally(level, details);
}
let logMsg = {
level: level,
details: details,
@ -84,6 +95,33 @@ class Logger {
let loggerInstance = new Logger();
/**
* Initializes the electron logger for local logging
*/
function initializeLocalLogger() {
electronLog.transports.file.level = 'debug';
electronLog.transports.file.format = '{h}:{i}:{s}:{ms} {text}';
electronLog.transports.file.maxSize = 10 * 1024 * 1024;
electronLog.transports.file.appName = 'Symphony';
}
/**
* Logs locally using the electron-logger
* @param level
* @param message
*/
function logLocally(level, message) {
switch (level) {
case logLevels.ERROR: electronLog.error(message); break;
case logLevels.CONFLICT: electronLog.error(message); break;
case logLevels.WARN: electronLog.warn(message); break;
case logLevels.ACTION: electronLog.warn(message); break;
case logLevels.INFO: electronLog.info(message); break;
case logLevels.DEBUG: electronLog.debug(message); break;
default: electronLog.debug(message);
}
}
// Logger class is only exposed for testing purposes.
module.exports = {
Logger: Logger,

View File

@ -98,6 +98,7 @@
"async.mapseries": "^0.5.2",
"auto-launch": "^5.0.1",
"electron-dl": "^1.9.0",
"electron-log": "^2.2.7",
"electron-spellchecker": "^1.2.0",
"electron-squirrel-startup": "^1.0.0",
"filesize": "^3.5.10",