mirror of
https://github.com/finos/SymphonyElectron.git
synced 2025-02-25 18:55:29 -06:00
electron-97: refactored the code as per the ticket (point 5 i.e. local logging covered)
This commit is contained in:
parent
d566e38b6a
commit
1819b7f82d
38
js/log.js
38
js/log.js
@ -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,
|
||||
|
@ -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",
|
||||
|
Loading…
Reference in New Issue
Block a user