github.com/containers/podman/v4@v4.9.4/libpod/events/events_linux.go (about) 1 package events 2 3 import ( 4 "fmt" 5 "strings" 6 7 "github.com/sirupsen/logrus" 8 ) 9 10 // NewEventer creates an eventer based on the eventer type 11 func NewEventer(options EventerOptions) (Eventer, error) { 12 logrus.Debugf("Initializing event backend %s", options.EventerType) 13 switch strings.ToUpper(options.EventerType) { 14 case strings.ToUpper(Journald.String()): 15 eventer, err := newEventJournalD(options) 16 if err != nil { 17 return nil, fmt.Errorf("eventer creation: %w", err) 18 } 19 return eventer, nil 20 case strings.ToUpper(LogFile.String()): 21 return newLogFileEventer(options) 22 case strings.ToUpper(Null.String()): 23 return newNullEventer(), nil 24 case strings.ToUpper(Memory.String()): 25 return NewMemoryEventer(), nil 26 default: 27 return nil, fmt.Errorf("unknown event logger type: %s", strings.ToUpper(options.EventerType)) 28 } 29 }