Refactored Code

Moved the 'logDir' and 'logger' global variables into 'loggerImpl' struct
Renamed struct names and interface name
This commit is contained in:
balandi1 2019-12-05 15:01:11 -05:00
parent 64ab443d25
commit bd8ddd1835
8 changed files with 72 additions and 58 deletions

View file

@ -11,8 +11,7 @@ import (
var config LoggerConfig
var formatter ElektronFormatter
var ElektronLogger *LoggerImpl
var logDir logDirectory
var ElektronLogger *loggerImpl
func BuildLogger(prefix string, logConfigFilename string) {
@ -23,6 +22,7 @@ func BuildLogger(prefix string, logConfigFilename string) {
startTime := time.Now()
formatter.TimestampFormat = "2006-01-02 15:04:05"
formattedStartTime := startTime.Format("20060102150405")
logDir := &logDirectory{}
logDir.createLogDir(prefix, startTime)
// Instantiate the logrus instance.
@ -35,20 +35,20 @@ func BuildLogger(prefix string, logConfigFilename string) {
// Create a chain of loggers.
b := &baseLogData{data: log.Fields{}}
head := &LoggerImpl{baseLogData: b}
cLog := NewConsoleLogger(b, CONSOLE, prefix, logger)
pLog := NewPCPLogger(b, PCP, prefix, logger)
schedTraceLog := NewSchedTraceLogger(b, SCHED_TRACE, prefix, logger)
spsLog := NewSchedPolicySwitchLogger(b, SPS, prefix, logger)
schedWindowLog := NewSchedWindowLogger(b, SCHED_WINDOW, prefix, logger)
tskDistLog := NewClsfnTaskDistrOverheadLogger(b, CLSFN_TASKDISTR_OVERHEAD, prefix, logger)
head := &loggerImpl{baseLogData: b}
cLog := NewConsoleLogger(b, CONSOLE, prefix, logger, logDir)
pLog := NewPCPLogger(b, PCP, prefix, logger, logDir)
schedTraceLog := NewSchedTraceLogger(b, SCHED_TRACE, prefix, logger, logDir)
spsLog := NewSchedPolicySwitchLogger(b, SPS, prefix, logger, logDir)
schedWindowLog := NewSchedWindowLogger(b, SCHED_WINDOW, prefix, logger, logDir)
tskDistLog := NewClsfnTaskDistrOverheadLogger(b, CLSFN_TASKDISTR_OVERHEAD, prefix, logger, logDir)
head.SetNext(cLog)
cLog.SetNext(pLog)
pLog.SetNext(schedTraceLog)
schedTraceLog.SetNext(spsLog)
spsLog.SetNext(schedWindowLog)
schedWindowLog.SetNext(tskDistLog)
head.setNext(cLog)
cLog.setNext(pLog)
pLog.setNext(schedTraceLog)
schedTraceLog.setNext(spsLog)
spsLog.setNext(schedWindowLog)
schedWindowLog.setNext(tskDistLog)
ElektronLogger = head
}