Documentation ¶
Overview ¶
Package log contains utilities for fetching a new logger when one is not already available.
The Log Handle ¶
This package contains a root logr.Logger Log. It may be used to get a handle to whatever the root logging implementation is. By default, no implementation exists, and the handle returns "promises" to loggers. When the implementation is set using SetLogger, these "promises" will be converted over to real loggers.
Logr ¶
All logging in controller-runtime is structured, using a set of interfaces defined by a package called logr (https://godoc.org/github.com/go-logr/logr). The sub-package zap provides helpers for setting up logr backed by Zap (go.uber.org/zap).
Index ¶
- Variables
- func SetLogger(l logr.Logger)
- type DelegatingLogger
- type NullLogger
- func (NullLogger) Enabled() bool
- func (NullLogger) Error(_ error, _ string, _ ...interface{})
- func (NullLogger) Info(_ string, _ ...interface{})
- func (log NullLogger) V(_ int) logr.InfoLogger
- func (log NullLogger) WithName(_ string) logr.Logger
- func (log NullLogger) WithValues(_ ...interface{}) logr.Logger
Constants ¶
This section is empty.
Variables ¶
var Log = NewDelegatingLogger(NullLogger{})
Log is the base logger used by kubebuilder. It delegates to another logr.Logger. You *must* call SetLogger to get any actual logging.
Functions ¶
Types ¶
type DelegatingLogger ¶
DelegatingLogger is a logr.Logger that delegates to another logr.Logger. If the underlying promise is not nil, it registers calls to sub-loggers with the logging factory to be populated later, and returns a new delegating logger. It expects to have *some* logr.Logger set at all times (generally a no-op logger before the promises are fulfilled).
func NewDelegatingLogger ¶
func NewDelegatingLogger(initial logr.Logger) *DelegatingLogger
NewDelegatingLogger constructs a new DelegatingLogger which uses the given logger before it's promise is fulfilled.
func (*DelegatingLogger) Fulfill ¶
func (l *DelegatingLogger) Fulfill(actual logr.Logger)
Fulfill switches the logger over to use the actual logger provided, instead of the temporary initial one, if this method has not been previously called.
func (*DelegatingLogger) WithName ¶
func (l *DelegatingLogger) WithName(name string) logr.Logger
WithName provides a new Logger with the name appended
func (*DelegatingLogger) WithValues ¶
func (l *DelegatingLogger) WithValues(tags ...interface{}) logr.Logger
WithValues provides a new Logger with the tags appended
type NullLogger ¶
type NullLogger struct{}
NullLogger is a logr.Logger that does nothing.
func (NullLogger) Error ¶
func (NullLogger) Error(_ error, _ string, _ ...interface{})
Error implements logr.Logger
func (NullLogger) Info ¶
func (NullLogger) Info(_ string, _ ...interface{})
Info implements logr.InfoLogger
func (NullLogger) WithName ¶
func (log NullLogger) WithName(_ string) logr.Logger
WithName implements logr.Logger
func (NullLogger) WithValues ¶
func (log NullLogger) WithValues(_ ...interface{}) logr.Logger
WithValues implements logr.Logger