syslog

package
v0.2.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 27, 2022 License: MIT Imports: 6 Imported by: 9

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")
}
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

type PrioritySelector func(keyvals ...interface{}) gosyslog.Priority

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL