Files
docker-cli/components/engine/daemon/logger/syslog/syslog.go
Anton Tiurin 59aa846db8 Syslog.Log - Remove redundant cast of msg.Line []byte to string as
it's a fmt.Sprintf responsibility.

Signed-off-by: Anton Tiurin <noxiouz@yandex.ru>
Upstream-commit: f2c7b4d7437443d469b2247362835af02ccef385
Component: engine
2015-03-24 01:35:54 +03:00

45 lines
721 B
Go

package syslog
import (
"fmt"
"log/syslog"
"os"
"path"
"sync"
"github.com/docker/docker/daemon/logger"
)
type Syslog struct {
writer *syslog.Writer
tag string
mu sync.Mutex
}
func New(tag string) (logger.Logger, error) {
log, err := syslog.New(syslog.LOG_USER, path.Base(os.Args[0]))
if err != nil {
return nil, err
}
return &Syslog{
writer: log,
tag: tag,
}, nil
}
func (s *Syslog) Log(msg *logger.Message) error {
logMessage := fmt.Sprintf("%s: %s", s.tag, msg.Line)
if msg.Source == "stderr" {
return s.writer.Err(logMessage)
}
return s.writer.Info(logMessage)
}
func (s *Syslog) Close() error {
return s.writer.Close()
}
func (s *Syslog) Name() string {
return "Syslog"
}