From 966308eeb7793a4a8ca578e160981e3b059b82e6 Mon Sep 17 00:00:00 2001 From: Jakob Unterwurzacher Date: Sun, 5 Mar 2017 17:44:14 +0100 Subject: Drop Go 1.4 compatability code everywhere Yields a nice reduction in code size. --- internal/tlog/log.go | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'internal/tlog/log.go') diff --git a/internal/tlog/log.go b/internal/tlog/log.go index bd8844b..720bb88 100644 --- a/internal/tlog/log.go +++ b/internal/tlog/log.go @@ -6,6 +6,7 @@ import ( "encoding/json" "fmt" "log" + "log/syslog" "os" "golang.org/x/crypto/ssh/terminal" @@ -117,3 +118,27 @@ func init() { postfix: ColorReset, } } + +// SwitchToSyslog redirects the output of this logger to syslog. +func (l *toggledLogger) SwitchToSyslog(p syslog.Priority) { + w, err := syslog.New(p, ProgramName) + if err != nil { + Warn.Printf("SwitchToSyslog: %v", err) + } else { + l.SetOutput(w) + } +} + +// SwitchLoggerToSyslog redirects the default log.Logger that the go-fuse lib uses +// to syslog. +func SwitchLoggerToSyslog(p syslog.Priority) { + w, err := syslog.New(p, ProgramName) + if err != nil { + Warn.Printf("SwitchLoggerToSyslog: %v", err) + } else { + log.SetPrefix("go-fuse: ") + // Disable printing the timestamp, syslog already provides that + log.SetFlags(0) + log.SetOutput(w) + } +} -- cgit v1.2.3