Skip to content

gRPC Go middleware for Sentry: server and client interceptors

License

Notifications You must be signed in to change notification settings

helio/grpc-middleware-sentry

 
 

Repository files navigation

Go gRPC Middleware for Sentry

GitHub Workflow Apache 2.0 License

gRPC Go middleware for Sentry: server and client interceptors

Middleware

import (
    "github.com/getsentry/sentry-go"

    grpc_middleware "github.com/grpc-ecosystem/go-grpc-middleware"
    grpc_sentry "github.com/johnbellone/grpc-middleware-sentry"
)

func main() {
	err = sentry.Init(sentry.ClientOptions{
		Dsn: "https://[email protected]/42",
		Debug: false,
		Environment: "development",
		Release: "[email protected]",
		IgnoreErrors: []string{},
	})
	defer sentry.Flush(2 * time.Second)
	if err != nil {
		logger.Fatal(err.Error())
	}

	s := grpc.NewServer(
		grpc.StreamInterceptor(grpc_middleware.ChainStreamServer(
			grpc_sentry.StreamServerInterceptor(),
		)),
		grpc.UnaryInterceptor(grpc_middleware.ChainUnaryServer(
			grpc_sentry.UnaryServerInterceptor(),
		)),
	)
}

License

grpc-middleware-sentry is released under the Apache 2.0 license. See the LICENSE file for details.

About

gRPC Go middleware for Sentry: server and client interceptors

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 100.0%