Documentation
¶
Overview ¶
Package syslog provides a Logger that writes to syslog.
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/go-kit/log"
"github.com/go-kit/log/level"
"github.com/go-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")
}
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.