Merged in differentSwitchingMechanisms (pull request #14)
DifferentSwitchingMechanisms Approved-by: Akash Kothawale <akothaw1@binghamton.edu>
This commit is contained in:
parent
1bee742588
commit
66c19b53c9
13 changed files with 172 additions and 31 deletions
|
@ -16,6 +16,7 @@ var (
|
|||
DEG_COL = messageNametoMessageType("DEG_COL")
|
||||
SPS = messageNametoMessageType("SPS")
|
||||
CLSFN_TASKDIST_OVERHEAD = messageNametoMessageType("CLSFN_TASKDIST_OVERHEAD")
|
||||
SCHED_WINDOW = messageNametoMessageType("SCHED_WINDOW")
|
||||
)
|
||||
|
||||
// Text colors for the different types of log messages.
|
||||
|
|
|
@ -21,6 +21,7 @@ func newLogger() *LoggerDriver {
|
|||
DEG_COL: true,
|
||||
SPS: true,
|
||||
CLSFN_TASKDIST_OVERHEAD: true,
|
||||
SCHED_WINDOW: true,
|
||||
},
|
||||
}
|
||||
return logger
|
||||
|
|
|
@ -14,6 +14,7 @@ const (
|
|||
degColLogger = "degCol-logger"
|
||||
spsLogger = "schedPolicySwitch-logger"
|
||||
clsfnTaskDistOverheadLogger = "classificationOverhead-logger"
|
||||
schedWindowLogger = "schedWindow-logger"
|
||||
)
|
||||
|
||||
// Logger class factory
|
||||
|
@ -24,6 +25,7 @@ var Loggers map[string]loggerObserver = map[string]loggerObserver{
|
|||
degColLogger: nil,
|
||||
spsLogger: nil,
|
||||
clsfnTaskDistOverheadLogger: nil,
|
||||
schedWindowLogger: nil,
|
||||
}
|
||||
|
||||
// Logger options to help initialize loggers
|
||||
|
@ -46,6 +48,7 @@ func withLoggerSpecifics(prefix string) loggerOption {
|
|||
degColLogger: &specifics{},
|
||||
spsLogger: &specifics{},
|
||||
clsfnTaskDistOverheadLogger: &specifics{},
|
||||
schedWindowLogger: &specifics{},
|
||||
}
|
||||
l.(*loggerObserverImpl).setLogFilePrefix(prefix)
|
||||
l.(*loggerObserverImpl).setLogFile()
|
||||
|
@ -76,6 +79,9 @@ func attachAllLoggers(lg *LoggerDriver, startTime time.Time, prefix string) {
|
|||
Loggers[clsfnTaskDistOverheadLogger] = &ClsfnTaskDistOverheadLogger{
|
||||
loggerObserverImpl: *loi,
|
||||
}
|
||||
Loggers[schedWindowLogger] = &SchedWindowLogger{
|
||||
loggerObserverImpl: *loi,
|
||||
}
|
||||
|
||||
for _, lmt := range GetLogMessageTypes() {
|
||||
switch lmt {
|
||||
|
@ -97,6 +103,8 @@ func attachAllLoggers(lg *LoggerDriver, startTime time.Time, prefix string) {
|
|||
lg.attach(SPS, Loggers[spsLogger])
|
||||
case CLSFN_TASKDIST_OVERHEAD.String():
|
||||
lg.attach(CLSFN_TASKDIST_OVERHEAD, Loggers[clsfnTaskDistOverheadLogger])
|
||||
case SCHED_WINDOW.String():
|
||||
lg.attach(SCHED_WINDOW, Loggers[schedWindowLogger])
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -93,6 +93,15 @@ func (loi *loggerObserverImpl) setLogFilePrefix(prefix string) {
|
|||
clsfnTaskDistOverheadLogFilePrefix = loi.logDirectory + "/" + clsfnTaskDistOverheadLogFilePrefix
|
||||
}
|
||||
loi.logObserverSpecifics[clsfnTaskDistOverheadLogger].logFilePrefix = clsfnTaskDistOverheadLogFilePrefix
|
||||
|
||||
// Setting logFilePrefix for schedWindow logger.
|
||||
// Going to log the time stamp when the scheduling window was determined
|
||||
// and the size of the scheduling window.
|
||||
schedWindowLogFilePrefix := prefix + "_schedWindow.log"
|
||||
if loi.logDirectory != "" {
|
||||
schedWindowLogFilePrefix = loi.logDirectory + "/" + schedWindowLogFilePrefix
|
||||
}
|
||||
loi.logObserverSpecifics[schedWindowLogger].logFilePrefix = schedWindowLogFilePrefix
|
||||
}
|
||||
|
||||
func (loi *loggerObserverImpl) setLogDirectory(dirName string) {
|
||||
|
|
10
logging/def/schedWindowLogger.go
Normal file
10
logging/def/schedWindowLogger.go
Normal file
|
@ -0,0 +1,10 @@
|
|||
package logging
|
||||
|
||||
type SchedWindowLogger struct {
|
||||
loggerObserverImpl
|
||||
}
|
||||
|
||||
func (swl SchedWindowLogger) Log(message string) {
|
||||
// Logging schedule trace to mentioned file
|
||||
swl.logObserverSpecifics[schedWindowLogger].logFile.Println(message)
|
||||
}
|
Reference in a new issue