Categorygithub.com/pnutmath/zapsentry
modulepackage
1.5.1
Repository: https://github.com/pnutmath/zapsentry.git
Documentation: pkg.go.dev

# README

Sentry client for zap logger

Go Report Card Godoc

Integration of sentry client into zap.Logger is pretty simple:

func modifyToSentryLogger(log *zap.Logger, DSN string) *zap.Logger {
	cfg := zapsentry.Configuration{
		Level: zapcore.ErrorLevel, //when to send message to sentry
		Tags: map[string]string{
			"component": "system",
		},
	}
	core, err := zapsentry.NewCore(cfg, zapsentry.NewSentryClientFromDSN(DSN))
	//in case of err it will return noop core. so we can safely attach it
	if err != nil {
		log.Warn("failed to init zap", zap.Error(err))
	}
	return zapsentry.AttachCoreToLogger(core, log)
}

# Functions

AttachCoreToLogger attaches sentry to zap logger.
NewCore creates new zapcore object.
NewSentryClientFromClient creates new sentry client from sentry client reference.
NewSentryClientFromDSN creates new sentry client from DSN value.

# Structs

Configuration is a minimal set of parameters for Sentry integration.

# Interfaces

ClientGetter interface getter for sentry client.

# Type aliases

SentryClientFactory function that return sentry client.