Merged in akash/LogPolicySwitch (pull request #4)
Scheduling Policy Switch Logger Approved-by: Pradyumna Kaushik <pkaushi1@binghamton.edu>
This commit is contained in:
parent
3fa4a45ca7
commit
b1bd21f730
11 changed files with 94 additions and 4 deletions
|
@ -14,6 +14,7 @@ var (
|
|||
SCHED_TRACE = messageNametoMessageType("SCHED_TRACE")
|
||||
PCP = messageNametoMessageType("PCP")
|
||||
DEG_COL = messageNametoMessageType("DEG_COL")
|
||||
SPS = messageNametoMessageType("SPS")
|
||||
)
|
||||
|
||||
// Text colors for the different types of log messages.
|
||||
|
|
|
@ -19,6 +19,7 @@ func newLogger() *LoggerDriver {
|
|||
SUCCESS: true,
|
||||
PCP: true,
|
||||
DEG_COL: true,
|
||||
SPS: true,
|
||||
},
|
||||
}
|
||||
return logger
|
||||
|
|
|
@ -12,6 +12,7 @@ const (
|
|||
schedTraceLogger = "schedTrace-logger"
|
||||
pcpLogger = "pcp-logger"
|
||||
degColLogger = "degCol-logger"
|
||||
spsLogger = "schedPolicySwitch-logger"
|
||||
)
|
||||
|
||||
// Logger class factory
|
||||
|
@ -20,6 +21,7 @@ var Loggers map[string]loggerObserver = map[string]loggerObserver{
|
|||
schedTraceLogger: nil,
|
||||
pcpLogger: nil,
|
||||
degColLogger: nil,
|
||||
spsLogger: nil,
|
||||
}
|
||||
|
||||
// Logger options to help initialize loggers
|
||||
|
@ -40,6 +42,7 @@ func withLoggerSpecifics(prefix string) loggerOption {
|
|||
schedTraceLogger: &specifics{},
|
||||
pcpLogger: &specifics{},
|
||||
degColLogger: &specifics{},
|
||||
spsLogger: &specifics{},
|
||||
}
|
||||
l.(*loggerObserverImpl).setLogFilePrefix(prefix)
|
||||
l.(*loggerObserverImpl).setLogFile()
|
||||
|
@ -64,6 +67,9 @@ func attachAllLoggers(lg *LoggerDriver, startTime time.Time, prefix string) {
|
|||
Loggers[degColLogger] = &DegColLogger{
|
||||
loggerObserverImpl: *loi,
|
||||
}
|
||||
Loggers[spsLogger] = &SchedPolicySwitchLogger{
|
||||
loggerObserverImpl: *loi,
|
||||
}
|
||||
|
||||
for _, lmt := range GetLogMessageTypes() {
|
||||
switch lmt {
|
||||
|
@ -81,6 +87,8 @@ func attachAllLoggers(lg *LoggerDriver, startTime time.Time, prefix string) {
|
|||
lg.attach(PCP, Loggers[pcpLogger])
|
||||
case DEG_COL.String():
|
||||
lg.attach(DEG_COL, Loggers[degColLogger])
|
||||
case SPS.String():
|
||||
lg.attach(SPS, Loggers[spsLogger])
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -77,6 +77,13 @@ func (loi *loggerObserverImpl) setLogFilePrefix(prefix string) {
|
|||
degColLogFilePrefix = loi.logDirectory + "/" + degColLogFilePrefix
|
||||
}
|
||||
loi.logObserverSpecifics[degColLogger].logFilePrefix = degColLogFilePrefix
|
||||
|
||||
// Setting logFilePrefix for schedulingPolicySwitch logger
|
||||
schedPolicySwitchLogFilePrefix := prefix + "_schedPolicySwitch.log"
|
||||
if loi.logDirectory != "" {
|
||||
schedPolicySwitchLogFilePrefix = loi.logDirectory + "/" + schedPolicySwitchLogFilePrefix
|
||||
}
|
||||
loi.logObserverSpecifics[spsLogger].logFilePrefix = schedPolicySwitchLogFilePrefix
|
||||
}
|
||||
|
||||
func (loi *loggerObserverImpl) setLogDirectory(dirName string) {
|
||||
|
|
9
logging/def/schedPolicySwitchLogger.go
Normal file
9
logging/def/schedPolicySwitchLogger.go
Normal file
|
@ -0,0 +1,9 @@
|
|||
package logging
|
||||
|
||||
type SchedPolicySwitchLogger struct {
|
||||
loggerObserverImpl
|
||||
}
|
||||
|
||||
func (pl *SchedPolicySwitchLogger) Log(message string) {
|
||||
pl.logObserverSpecifics[spsLogger].logFile.Println(message)
|
||||
}
|
Reference in a new issue