Version: v0.2.0-alpha.0 Latest Latest

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

Go to latest
Published: Apr 11, 2019 License: Apache-2.0 Imports: 12 Imported by: 0



Package zap contains helpers for setting up a new logr.Logger instance using the Zap logging framework.



This section is empty.


This section is empty.


func Logger

func Logger(development bool) logr.Logger

Logger is a Logger implementation. If development is true, a Zap development config will be used (stacktraces on warnings, no sampling), otherwise a Zap production config will be used (stacktraces on errors, sampling).

func LoggerTo

func LoggerTo(destWriter io.Writer, development bool) logr.Logger

LoggerTo returns a new Logger implementation using Zap which logs to the given destination, instead of stderr. It otherwise behaves like ZapLogger.

func RawLoggerTo

func RawLoggerTo(destWriter io.Writer, development bool, opts ...zap.Option) *zap.Logger

RawLoggerTo returns a new zap.Logger configured with KubeAwareEncoder which logs to a given destination


type KubeAwareEncoder

type KubeAwareEncoder struct {
	// Encoder is the zapcore.Encoder that this encoder delegates to

	// Verbose controls whether or not the full object is printed.
	// If false, only name, namespace, api version, and kind are printed.
	// Otherwise, the full object is logged.
	Verbose bool

KubeAwareEncoder is a Kubernetes-aware Zap Encoder. Instead of trying to force Kubernetes objects to implement ObjectMarshaller, we just implement a wrapper around a normal ObjectMarshaller that checks for Kubernetes objects.

func (*KubeAwareEncoder) Clone

func (k *KubeAwareEncoder) Clone() zapcore.Encoder

Clone implements zapcore.Encoder

func (*KubeAwareEncoder) EncodeEntry

func (k *KubeAwareEncoder) EncodeEntry(entry zapcore.Entry, fields []zapcore.Field) (*buffer.Buffer, error)

EncodeEntry implements zapcore.Encoder

Jump to

Keyboard shortcuts

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