portable mode: advertise service via multicast dns

Fixes #51
This commit is contained in:
Nicola Murino
2019-10-26 18:25:53 +02:00
parent b409523d5c
commit c5a6ca5650
6 changed files with 153 additions and 54 deletions

View File

@@ -54,12 +54,7 @@ func InitLogger(logFilePath string, logMaxSize int, logMaxBackups int, logMaxAge
MaxAge: logMaxAge,
Compress: logCompress,
})
consoleOutput := zerolog.ConsoleWriter{
Out: os.Stdout,
TimeFormat: dateFormat,
NoColor: runtime.GOOS == "windows",
}
consoleLogger = zerolog.New(consoleOutput).With().Timestamp().Logger().Level(level)
EnableConsoleLogger(level)
} else {
logger = zerolog.New(logSyncWrapper{
output: os.Stdout,
@@ -69,6 +64,22 @@ func InitLogger(logFilePath string, logMaxSize int, logMaxBackups int, logMaxAge
logger = logger.With().Timestamp().Logger().Level(level)
}
// DisableLogger disable the main logger.
// ConsoleLogger will not be affected
func DisableLogger() {
logger = zerolog.Nop()
}
// EnableConsoleLogger enables the console logger
func EnableConsoleLogger(level zerolog.Level) {
consoleOutput := zerolog.ConsoleWriter{
Out: os.Stdout,
TimeFormat: dateFormat,
NoColor: runtime.GOOS == "windows",
}
consoleLogger = zerolog.New(consoleOutput).With().Timestamp().Logger().Level(level)
}
// Log logs at the specified level for the specified sender
func Log(level LogLevel, sender string, connectionID string, format string, v ...interface{}) {
switch level {