Documentation ¶
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewSyslogLogger ¶
func NewSyslogLogger(w SyslogWriter, newLogger func(io.Writer) log.Logger, options ...Option) log.Logger
NewSyslogLogger returns a new Logger which writes to syslog in syslog format. The body of the log message is the formatted output from the Logger returned by newLogger.
Example (DefaultPrioritySelector) ¶
package main import ( "fmt" gosyslog "log/syslog" "github.com/chadgrant/kit/log" "github.com/chadgrant/kit/log/level" "github.com/chadgrant/kit/log/syslog" ) func main() { // Normal syslog writer w, err := gosyslog.New(gosyslog.LOG_INFO, "experiment") if err != nil { fmt.Println(err) return } // syslog logger with logfmt formatting logger := syslog.NewSyslogLogger(w, log.NewLogfmtLogger) logger.Log("msg", "info because of default") logger.Log(level.Key(), level.DebugValue(), "msg", "debug because of explicit level") }
Output:
Types ¶
type Option ¶
type Option func(*syslogLogger)
Option sets a parameter for syslog loggers.
func PrioritySelectorOption ¶
func PrioritySelectorOption(selector PrioritySelector) Option
PrioritySelectorOption sets priority selector function to choose syslog priority.
type PrioritySelector ¶
PrioritySelector inspects the list of keyvals and selects a syslog priority.
type SyslogWriter ¶
type SyslogWriter interface { Write([]byte) (int, error) Close() error Emerg(string) error Alert(string) error Crit(string) error Err(string) error Warning(string) error Notice(string) error Info(string) error Debug(string) error }
SyslogWriter is an interface wrapping stdlib syslog Writer.
Click to show internal directories.
Click to hide internal directories.