Documentation
¶
Index ¶
- func Enabled() bool
- func GlogHeader(level LogLevel, depth int) []byte
- func Print(priority Priority, format string, a ...interface{}) error
- func Send(message string, priority Priority, vars map[string]string) error
- func SetFormatter(f Formatter)
- func SetGlobalLogLevel(l LogLevel)
- type Formatter
- func NewDefaultFormatter(out io.Writer) Formatter
- func NewDefaultSyslogFormatter(tag string) (Formatter, error)
- func NewJournaldFormatter() (Formatter, error)
- func NewLogFormatter(w io.Writer, prefix string, flag int) Formatter
- func NewNilFormatter() Formatter
- func NewPrettyFormatter(w io.Writer, debug bool) Formatter
- func NewStringFormatter(w io.Writer) Formatter
- func NewSyslogFormatter(w *syslog.Writer) Formatter
- type GlogFormatter
- type LogFormatter
- type LogLevel
- type NilFormatter
- type PackageLogger
- func (p *PackageLogger) Debug(entries ...interface{})
- func (p *PackageLogger) Debugf(format string, args ...interface{})
- func (p *PackageLogger) Error(entries ...interface{})
- func (p *PackageLogger) Errorf(format string, args ...interface{})
- func (p *PackageLogger) Fatal(args ...interface{})
- func (p *PackageLogger) Fatalf(format string, args ...interface{})
- func (p *PackageLogger) Fatalln(args ...interface{})
- func (p *PackageLogger) Flush()
- func (p *PackageLogger) Info(entries ...interface{})
- func (p *PackageLogger) Infof(format string, args ...interface{})
- func (p *PackageLogger) LevelAt(l LogLevel) bool
- func (p *PackageLogger) Log(l LogLevel, args ...interface{})
- func (p *PackageLogger) Logf(l LogLevel, format string, args ...interface{})
- func (p *PackageLogger) Notice(entries ...interface{})
- func (p *PackageLogger) Noticef(format string, args ...interface{})
- func (p *PackageLogger) Panic(args ...interface{})
- func (p *PackageLogger) Panicf(format string, args ...interface{})
- func (p *PackageLogger) Panicln(args ...interface{})
- func (p *PackageLogger) Print(args ...interface{})
- func (p *PackageLogger) Printf(format string, args ...interface{})
- func (p *PackageLogger) Println(args ...interface{})
- func (p *PackageLogger) SetLevel(l LogLevel)
- func (p *PackageLogger) Trace(entries ...interface{})
- func (p *PackageLogger) Tracef(format string, args ...interface{})
- func (p *PackageLogger) Warning(entries ...interface{})
- func (p *PackageLogger) Warningf(format string, args ...interface{})
- type PrettyFormatter
- type Priority
- type RepoLogger
- type StringFormatter
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Enabled ¶
func Enabled() bool
Enabled checks whether the local systemd journal is available for logging.
func GlogHeader ¶
func Send ¶
Send a message to the local systemd journal. vars is a map of journald fields to values. Fields must be composed of uppercase letters, numbers, and underscores, but must not start with an underscore. Within these restrictions, any arbitrary field name may be used. Some names have special significance: see the journalctl documentation (http://www.freedesktop.org/software/systemd/man/systemd.journal-fields.html) for more details. vars may be nil.
func SetFormatter ¶
func SetFormatter(f Formatter)
SetFormatter sets the formatting function for all logs.
func SetGlobalLogLevel ¶
func SetGlobalLogLevel(l LogLevel)
SetGlobalLogLevel sets the log level for all packages in all repositories registered with capnslog.
Types ¶
type Formatter ¶
type Formatter interface { Format(pkg string, level LogLevel, depth int, entries ...interface{}) Flush() }
func NewDefaultFormatter ¶
func NewJournaldFormatter ¶
func NewLogFormatter ¶
NewLogFormatter is a helper to produce a new LogFormatter struct. It uses the golang log package to actually do the logging work so that logs look similar.
func NewNilFormatter ¶
func NewNilFormatter() Formatter
NewNilFormatter is a helper to produce a new LogFormatter struct. It logs no messages so that you can cause part of your logging to be silent.
func NewStringFormatter ¶
func NewSyslogFormatter ¶
type GlogFormatter ¶
type GlogFormatter struct {
StringFormatter
}
func NewGlogFormatter ¶
func NewGlogFormatter(w io.Writer) *GlogFormatter
type LogFormatter ¶
type LogFormatter struct {
// contains filtered or unexported fields
}
LogFormatter emulates the form of the traditional built-in logger.
func (*LogFormatter) Flush ¶
func (lf *LogFormatter) Flush()
Flush is included so that the interface is complete, but is a no-op.
type LogLevel ¶
type LogLevel int8
LogLevel is the set of all log levels.
const ( // CRITICAL is the lowest log level; only errors which will end the program will be propagated. CRITICAL LogLevel = iota - 1 // ERROR is for errors that are not fatal but lead to troubling behavior. ERROR // WARNING is for errors which are not fatal and not errors, but are unusual. Often sourced from misconfigurations. WARNING // NOTICE is for normal but significant conditions. NOTICE // INFO is a log level for common, everyday log updates. INFO // DEBUG is the default hidden level for more verbose updates about internal processes. DEBUG // TRACE is for (potentially) call by call tracing of programs. TRACE )
func ParseLevel ¶
ParseLevel translates some potential loglevel strings into their corresponding levels.
type NilFormatter ¶
type NilFormatter struct { }
NilFormatter is a no-op log formatter that does nothing.
func (*NilFormatter) Flush ¶
func (_ *NilFormatter) Flush()
Flush is included so that the interface is complete, but is a no-op.
type PackageLogger ¶
type PackageLogger struct {
// contains filtered or unexported fields
}
func NewPackageLogger ¶
func NewPackageLogger(repo string, pkg string) (p *PackageLogger)
NewPackageLogger creates a package logger object. This should be defined as a global var in your package, referencing your repo.
func (*PackageLogger) Debug ¶
func (p *PackageLogger) Debug(entries ...interface{})
func (*PackageLogger) Debugf ¶
func (p *PackageLogger) Debugf(format string, args ...interface{})
func (*PackageLogger) Error ¶
func (p *PackageLogger) Error(entries ...interface{})
func (*PackageLogger) Errorf ¶
func (p *PackageLogger) Errorf(format string, args ...interface{})
func (*PackageLogger) Fatal ¶
func (p *PackageLogger) Fatal(args ...interface{})
func (*PackageLogger) Fatalf ¶
func (p *PackageLogger) Fatalf(format string, args ...interface{})
func (*PackageLogger) Fatalln ¶
func (p *PackageLogger) Fatalln(args ...interface{})
func (*PackageLogger) Flush ¶
func (p *PackageLogger) Flush()
func (*PackageLogger) Info ¶
func (p *PackageLogger) Info(entries ...interface{})
func (*PackageLogger) Infof ¶
func (p *PackageLogger) Infof(format string, args ...interface{})
func (*PackageLogger) LevelAt ¶
func (p *PackageLogger) LevelAt(l LogLevel) bool
LevelAt checks if the given log level will be outputted under current setting.
func (*PackageLogger) Log ¶
func (p *PackageLogger) Log(l LogLevel, args ...interface{})
Log a message at any level between ERROR and TRACE
func (*PackageLogger) Logf ¶
func (p *PackageLogger) Logf(l LogLevel, format string, args ...interface{})
Log a formatted string at any level between ERROR and TRACE
func (*PackageLogger) Notice ¶
func (p *PackageLogger) Notice(entries ...interface{})
func (*PackageLogger) Noticef ¶
func (p *PackageLogger) Noticef(format string, args ...interface{})
func (*PackageLogger) Panic ¶
func (p *PackageLogger) Panic(args ...interface{})
func (*PackageLogger) Panicf ¶
func (p *PackageLogger) Panicf(format string, args ...interface{})
func (*PackageLogger) Panicln ¶
func (p *PackageLogger) Panicln(args ...interface{})
func (*PackageLogger) Print ¶
func (p *PackageLogger) Print(args ...interface{})
func (*PackageLogger) Printf ¶
func (p *PackageLogger) Printf(format string, args ...interface{})
func (*PackageLogger) Println ¶
func (p *PackageLogger) Println(args ...interface{})
func (*PackageLogger) SetLevel ¶
func (p *PackageLogger) SetLevel(l LogLevel)
SetLevel allows users to change the current logging level.
func (*PackageLogger) Trace ¶
func (p *PackageLogger) Trace(entries ...interface{})
func (*PackageLogger) Tracef ¶
func (p *PackageLogger) Tracef(format string, args ...interface{})
func (*PackageLogger) Warning ¶
func (p *PackageLogger) Warning(entries ...interface{})
func (*PackageLogger) Warningf ¶
func (p *PackageLogger) Warningf(format string, args ...interface{})
type PrettyFormatter ¶
type PrettyFormatter struct {
// contains filtered or unexported fields
}
func (*PrettyFormatter) Flush ¶
func (c *PrettyFormatter) Flush()
type RepoLogger ¶
type RepoLogger map[string]*PackageLogger
func GetRepoLogger ¶
func GetRepoLogger(repo string) (RepoLogger, error)
GetRepoLogger may return the handle to the repository's set of packages' loggers.
func MustRepoLogger ¶
func MustRepoLogger(repo string) RepoLogger
MustRepoLogger returns the handle to the repository's packages' loggers.
func (RepoLogger) ParseLogLevelConfig ¶
func (r RepoLogger) ParseLogLevelConfig(conf string) (map[string]LogLevel, error)
ParseLogLevelConfig parses a comma-separated string of "package=loglevel", in order, and returns a map of the results, for use in SetLogLevel.
func (RepoLogger) SetLogLevel ¶
func (r RepoLogger) SetLogLevel(m map[string]LogLevel)
SetLogLevel takes a map of package names within a repository to their desired loglevel, and sets the levels appropriately. Unknown packages are ignored. "*" is a special package name that corresponds to all packages, and will be processed first.
func (RepoLogger) SetRepoLogLevel ¶
func (r RepoLogger) SetRepoLogLevel(l LogLevel)
SetRepoLogLevel sets the log level for all packages in the repository.
type StringFormatter ¶
type StringFormatter struct {
// contains filtered or unexported fields
}
func (*StringFormatter) Flush ¶
func (s *StringFormatter) Flush()