sentry

package module
v0.0.0-...-de3a201 Latest Latest
Warning

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

Go to latest
Published: Oct 21, 2021 License: MIT Imports: 10 Imported by: 1

README

Sentry middleware for Kratos

Quick Start

You could check the full demo in example folder.

// Step 1: 
// init sentry in the entry of your application
import "github.com/getsentry/sentry-go"

sentry.Init(sentry.ClientOptions{
		Dsn: "<your dsn>",
		AttachStacktrace: true, // recommended
})


// Step 2: 
// set middleware
import 	sentrykratos "github.com/go-kratos/sentry"

// for HTTP server, new HTTP server with sentry middleware options
var opts = []http.ServerOption{
	http.Middleware(
		recovery.Recovery(), 
		sentrykratos.Server(), // must after Recovery middleware, because of the exiting order will be reversed
		tracing.Server(),
		logging.Server(logger), 
	),
}

// for gRPC server, new gRPC server with sentry middleware options
var opts = []grpc.ServerOption{
     grpc.Middleware(
		recovery.Recovery(),
		sentrykratos.Server(), // must after Recovery middleware, because of the exiting order will be reversed
		tracing.Server(),
		logging.Server(logger),
     ),
 }


// Then, the framework will report events to Sentry when your trigger panics.
// Or your can push events to Sentry manually

Reference

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetHubFromContext

func GetHubFromContext(ctx context.Context) *sentry.Hub

GetHubFromContext retrieves attached *sentry.Hub instance from context.

func Server

func Server(opts ...Option) middleware.Middleware

Server returns a new server middleware for Sentry.

Types

type Option

type Option func(*options)

func WithRepanic

func WithRepanic(repanic bool) Option

func WithTimeout

func WithTimeout(timeout time.Duration) Option

func WithWaitForDelivery

func WithWaitForDelivery(waitForDelivery bool) Option

Jump to

Keyboard shortcuts

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