README

zapx

Extensions for uber-go/zap, a structured logging library for Go.

GoDoc Build Status Go Report Card

Usage

go get -u go.bobheadxi.dev/zapx
Expand ▾ Collapse ▴

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FieldSet

func FieldSet(key string, fields ...zap.Field) zap.Field

FieldSet allows logging of sets of fields as a log object TODO: not as performant as testdata.Obj for some reason, need to look into why

func New

func New(logpath string, dev bool, opts ...Option) (l *zap.Logger, err error)

New creates a default zap logger based with basic defaults. If `logpath` is set, will use json encoder and write to the provided filepath. If `dev` is true, will use zap.DevelopmentConfig with colors enabled, though if logpath is set, the json encoder (without colors) will be enforced. If `dev` is false, will use zap.ProductionConfig.

Types

type FieldSetMarshaller

type FieldSetMarshaller interface {
	zapcore.ObjectMarshaler
	Fields() []zap.Field
}

FieldSetMarshaller is the underlying type used by zapx.Fields()

type Option

type Option func(*zap.Config) error

Option denotes an option for the zapx constructor

func OnlyToFile

func OnlyToFile() Option

OnlyToFile removes all other outputs and only writes to file

func WithDebug

func WithDebug(debug bool) Option

WithDebug sets log level to debug if given bool is true

func WithFields

func WithFields(fields map[string]interface{}) Option

WithFields sets initial fields in the configuration

Directories

Path Synopsis
internal
zgcp Package zgcp provides log extensions and hooks for Google Cloud Platform services.
zgql Package zgql provides zap extensions and middleware for `99designs/gqlgen` (https://github.com/99designs/gqlgen).
zhttp Package zhttp provides zap extensions and middleware for Go's HTTP standard library.
zpgx Package zpgx provides zap extensions for `jackc/pgx` (https://godoc.org/github.com/jackc/pgx).
ztest Package ztest provides zap utilities for testing.
MODULE util
MODULE zapx
MODULE zgql
MODULE zhttp
MODULE zmetrics
MODULE ztest