grpcz

package
v0.0.12 Latest Latest
Warning

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

Go to latest
Published: Feb 5, 2023 License: Apache-2.0 Imports: 13 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ServerWithGatewayHandler added in v0.0.8

func ServerWithGatewayHandler(grpcServer *grpc.Server, grpcGatewayHandler http.Handler, http2Server *http2.Server) http.Handler

Types

type ServerWithGateway added in v0.0.8

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

func NewServerWithGateway added in v0.0.8

func NewServerWithGateway(
	grpcServer *grpc.Server,
	grpcGatewayMux *http.ServeMux,
	opts ...ServerWithGatewayOption,
) *ServerWithGateway

NewServerWithGateway returns grpc server instance with general shutdown handling.

Example:

server := grpcz.NewServerWithGateway(
	grpcServer,
	mux,
	grpcz.WithSignalChannel(contextz.MustSignalChannel(ctx)),
	grpcz.WithContinueSignalHandler(func(sig os.Signal) bool {
		l.With(rec.String("signal", sig.String())).F().Debugf("caught signal: %s", sig)
		return sig == syscall.SIGHUP
	}),
	grpcz.WithShutdownErrorHandler(func(err error) {
		l.With(rec.Error(err), rec.ErrorStacktrace(err)).F().Errorf("shutdown error: %v", err)
	}),
)

func (*ServerWithGateway) Serve added in v0.0.10

func (s *ServerWithGateway) Serve(
	ctx context.Context,
	l net.Listener,
) error

ListenAndServe serve gRPC Server with gRPC Gateway.

type ServerWithGatewayOption added in v0.0.8

type ServerWithGatewayOption func(s *ServerWithGateway)

func WithContinueSignalHandler added in v0.0.6

func WithContinueSignalHandler(continueSignalHandler func(sig os.Signal) bool) ServerWithGatewayOption

func WithHTTPServer added in v0.0.10

func WithHTTPServer(httpServer *http.Server) ServerWithGatewayOption

WithHTTPServer

If *http.Server has (*http.Server).Handler, it is ignored by grpcz.ServerWithGateway.

func WithShutdownErrorHandler added in v0.0.6

func WithShutdownErrorHandler(shutdownErrorHandler func(err error)) ServerWithGatewayOption

func WithShutdownTimeout added in v0.0.7

func WithShutdownTimeout(shutdownTimeout time.Duration) ServerWithGatewayOption

func WithSignalChannel added in v0.0.6

func WithSignalChannel(signalChannel chan os.Signal) ServerWithGatewayOption

Jump to

Keyboard shortcuts

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