diff options
Diffstat (limited to 'libgo/go/log/syslog/syslog.go')
-rw-r--r-- | libgo/go/log/syslog/syslog.go | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/libgo/go/log/syslog/syslog.go b/libgo/go/log/syslog/syslog.go index aef63480f16..3eb5353e9a9 100644 --- a/libgo/go/log/syslog/syslog.go +++ b/libgo/go/log/syslog/syslog.go @@ -136,25 +136,33 @@ func (w *Writer) Debug(m string) (err error) { } func (n netConn) writeBytes(p Priority, prefix string, b []byte) (int, error) { - return fmt.Fprintf(n.conn, "<%d>%s: %s\n", p, prefix, b) + _, err := fmt.Fprintf(n.conn, "<%d>%s: %s\n", p, prefix, b) + if err != nil { + return 0, err + } + return len(b), nil } func (n netConn) writeString(p Priority, prefix string, s string) (int, error) { - return fmt.Fprintf(n.conn, "<%d>%s: %s\n", p, prefix, s) + _, err := fmt.Fprintf(n.conn, "<%d>%s: %s\n", p, prefix, s) + if err != nil { + return 0, err + } + return len(s), nil } func (n netConn) close() error { return n.conn.Close() } -// NewLogger provides an object that implements the full log.Logger interface, -// but sends messages to Syslog instead; flag is passed as is to Logger; -// priority will be used for all messages sent using this interface. -// All messages are logged with priority p. -func NewLogger(p Priority, flag int) *log.Logger { +// NewLogger creates a log.Logger whose output is written to +// the system log service with the specified priority. The logFlag +// argument is the flag set passed through to log.New to create +// the Logger. +func NewLogger(p Priority, logFlag int) (*log.Logger, error) { s, err := New(p, "") if err != nil { - return nil + return nil, err } - return log.New(s, "", flag) + return log.New(s, "", logFlag), nil } |