log

package
v1.2.0 Latest Latest
Warning

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

Go to latest
Published: Oct 27, 2021 License: Apache-2.0 Imports: 10 Imported by: 4

Documentation

Index

Constants

View Source
const Key key = 0

Key references an existing log event inside a context.

Variables

View Source
var (
	// DefaultEvent returns a default log event.
	DefaultEvent = New(&NoFilter{}, &Console{}, &StdoutExporter{}, Debug)
)

Functions

func Context

func Context(ctx context.Context, e Event) context.Context

Context adds a log event to the current context.

Types

type Console

type Console struct {
}

Console formats an event into a colour formatted human readable text.

func (*Console) Format

func (f *Console) Format(e Event) string

Format formats a log event into the Stackdriver specific JSON schema.

type Event

type Event struct {
	// contains filtered or unexported fields
}

func Inherit

func Inherit(ctx context.Context) Event

Inherit tries to get a previously saved log event.

func New

func New(filter Filter, formatter Formatter, exporter Exporter, minLevel Level) Event

New creates a new default log event.

func NewWithTrace

func NewWithTrace(filter Filter, formatter Formatter, exporter Exporter, minLevel Level) Event

NewWithTrace creates a new default log event with initialised trace IDs.

func (Event) AddLabel

func (e Event) AddLabel(key, value string) Event

func (Event) Alert

func (e Event) Alert() Event

Alert sets the log level as alert.

func (Event) Critical

func (e Event) Critical() Event

Critical sets the log level as critical.

func (Event) Debug

func (e Event) Debug() Event

Debug sets the log level as debug.

func (Event) Emergency

func (e Event) Emergency() Event

Emergency sets the log level as emergency.

func (Event) Error

func (e Event) Error() Event

Error sets the log level as error.

func (Event) Fmt

func (e Event) Fmt(format string, args ...interface{})

Fmt emits a formatted log event message.

func (Event) Info

func (e Event) Info() Event

Info sets the log level as info.

func (Event) Msg

func (e Event) Msg(message string)

Msg emits a log event message.

func (Event) Notice

func (e Event) Notice() Event

Notice sets the log level as notice.

func (Event) SetData

func (e Event) SetData(data interface{}) Event

func (Event) SetError

func (e Event) SetError(err error) Event

func (Event) SetExporter

func (e Event) SetExporter(exporter Exporter) Event

func (Event) SetFilter added in v1.2.0

func (e Event) SetFilter(filter Filter) Event

func (Event) SetFormatter

func (e Event) SetFormatter(formatter Formatter) Event

func (Event) SetHTTPRequest

func (e Event) SetHTTPRequest(req *http.Request) Event

func (Event) SetMinLogLevel

func (e Event) SetMinLogLevel(minLevel Level) Event

func (Event) SetServiceName

func (e Event) SetServiceName(name string) Event

func (Event) SetServiceVersion

func (e Event) SetServiceVersion(version string) Event

func (Event) SetSpanID

func (e Event) SetSpanID(spanID trace.SpanID) Event

func (Event) SetTraceID

func (e Event) SetTraceID(traceID trace.ID) Event

func (Event) Warning

func (e Event) Warning() Event

Warning sets the log level as warning.

type Exporter

type Exporter interface {
	Export(string)
}

Exporter emits log messages to an output source.

type Filter added in v1.1.0

type Filter interface {
	CanWrite(msg string) bool
}

func NewFilter added in v1.2.0

func NewFilter(filter func(string) bool) Filter

type Formatter

type Formatter interface {
	Format(Event) string
}

Formatter can format a log event into a string.

type Level

type Level int

Level denotes the importance of a log event.

const (
	// Default means that the log event has no assigned log level.
	Default Level = iota * 100
	// Debug or trace information.
	Debug
	// Info events are routine information, such as ongoing status or performance.
	Info
	// Notice are normal but significant events, such as start up, shut down, or a configuration change.
	Notice
	// Warning events might cause problems.
	Warning
	// Error events are likely to cause problems.
	Error
	// Critical events cause more severe problems or outages.
	Critical
	// Alert events mean that a person must take an action immediately.
	Alert
	// Emergency means that one or more systems are unusable.
	Emergency
)

func ParseLevel

func ParseLevel(value string) Level

ParseLevel parses a string value into a log level.

func (Level) Short

func (lvl Level) Short() string

Short returns a 3 letter acronym for the log level.

func (Level) String

func (lvl Level) String() string

type NoFilter added in v1.1.0

type NoFilter struct{}

func (*NoFilter) CanWrite added in v1.1.0

func (f *NoFilter) CanWrite(_ string) bool

type Stackdriver

type Stackdriver struct {
}

Stackdriver formats an event into the Stackdriver specific JSON format.

func (*Stackdriver) Format

func (f *Stackdriver) Format(e Event) string

Format formats a log event into the Stackdriver specific JSON schema.

type StdoutExporter

type StdoutExporter struct{}

StdoutExporter emits log events to stdout.

func (*StdoutExporter) Export

func (e *StdoutExporter) Export(output string)

Export writes the output directly to stdout.

Jump to

Keyboard shortcuts

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