diff --git a/pkg/log/log.go b/pkg/log/log.go index 58f3cb89cab..15fa8e0cb74 100644 --- a/pkg/log/log.go +++ b/pkg/log/log.go @@ -179,17 +179,7 @@ func ReadLoggingConfig(modes []string, logsPath string, cfg *ini.File) { loggersToClose = append(loggersToClose, fileHandler) handler = fileHandler case "syslog": - sysLogHandler := NewSyslog() - sysLogHandler.Format = format - sysLogHandler.Network = sec.Key("network").MustString("") - sysLogHandler.Address = sec.Key("address").MustString("") - sysLogHandler.Facility = sec.Key("facility").MustString("local7") - sysLogHandler.Tag = sec.Key("tag").MustString("") - - if err := sysLogHandler.Init(); err != nil { - Root.Error("Failed to init syslog log handler", "error", err) - os.Exit(1) - } + sysLogHandler := NewSyslog(sec, format) loggersToClose = append(loggersToClose, sysLogHandler) handler = sysLogHandler diff --git a/pkg/log/syslog.go b/pkg/log/syslog.go index 29a22e9fe1e..2132690cae6 100644 --- a/pkg/log/syslog.go +++ b/pkg/log/syslog.go @@ -5,8 +5,10 @@ package log import ( "errors" "log/syslog" + "os" "github.com/inconshreveable/log15" + "gopkg.in/ini.v1" ) type SysLogHandler struct { @@ -18,10 +20,23 @@ type SysLogHandler struct { Format log15.Format } -func NewSyslog() *SysLogHandler { - return &SysLogHandler{ +func NewSyslog(sec *ini.Section, format log15.Format) *SysLogHandler { + handler := &SysLogHandler{ Format: log15.LogfmtFormat(), } + + handler.Format = format + handler.Network = sec.Key("network").MustString("") + handler.Address = sec.Key("address").MustString("") + handler.Facility = sec.Key("facility").MustString("local7") + handler.Tag = sec.Key("tag").MustString("") + + if err := handler.Init(); err != nil { + Root.Error("Failed to init syslog log handler", "error", err) + os.Exit(1) + } + + return handler } func (sw *SysLogHandler) Init() error { diff --git a/pkg/log/syslog_windows.go b/pkg/log/syslog_windows.go index c9b79a38426..40bc4110fb6 100644 --- a/pkg/log/syslog_windows.go +++ b/pkg/log/syslog_windows.go @@ -2,19 +2,18 @@ package log -import "github.com/inconshreveable/log15" +import ( + "github.com/inconshreveable/log15" + "gopkg.in/ini.v1" +) type SysLogHandler struct { } -func NewSyslog() *SysLogHandler { +func NewSyslog(sec *ini.Section, format log15.Format) *SysLogHandler { return &SysLogHandler{} } -func (sw *SysLogHandler) Init() error { - return nil -} - func (sw *SysLogHandler) Log(r *log15.Record) error { return nil }