github.com/guilhermebr/docker@v1.4.2-0.20150428121140-67da055cebca/daemon/logger/journald/journald.go (about) 1 package journald 2 3 import ( 4 "fmt" 5 6 "github.com/coreos/go-systemd/journal" 7 "github.com/docker/docker/daemon/logger" 8 ) 9 10 type Journald struct { 11 Jmap map[string]string 12 } 13 14 func New(id string) (logger.Logger, error) { 15 if !journal.Enabled() { 16 return nil, fmt.Errorf("journald is not enabled on this host") 17 } 18 jmap := map[string]string{"MESSAGE_ID": id} 19 return &Journald{Jmap: jmap}, nil 20 } 21 22 func (s *Journald) Log(msg *logger.Message) error { 23 if msg.Source == "stderr" { 24 return journal.Send(string(msg.Line), journal.PriErr, s.Jmap) 25 } 26 return journal.Send(string(msg.Line), journal.PriInfo, s.Jmap) 27 } 28 29 func (s *Journald) Close() error { 30 return nil 31 } 32 33 func (s *Journald) Name() string { 34 return "Journald" 35 }