connect-grpchealth-go

connect-grpchealth-go
adds support for gRPC-style health checks to any
net/http
server — including those built with Connect. By
polling this API, load balancers, container orchestrators, and other
infrastructure systems can respond to changes in your HTTP server's health.
The exposed health checking API is wire compatible with Google's gRPC
implementations, so it works with grpcurl, grpc-health-probe, and
Kubernetes gRPC liveness probes.
For more on Connect, see the announcement blog post, the documentation
on connect.build (especially the Getting Started guide for Go), the
connect-go
repo, or the demo service.
Example
package main
import (
"net/http"
"golang.org/x/net/http2"
"golang.org/x/net/http2/h2c"
grpchealth "github.com/bufbuild/connect-grpchealth-go"
)
func main() {
mux := http.NewServeMux()
checker := grpchealth.NewStaticChecker(
"acme.user.v1.UserService",
"acme.group.v1.GroupService",
)
mux.Handle(grpchealth.NewHandler(checker))
http.ListenAndServe(
":8080",
h2c.NewHandler(mux, &http2.Server{}),
)
}
Status: Stable
This module is stable. It supports:
Within those parameters, connect-grpchealth-go
follows semantic versioning.
We will not make breaking changes in the 1.x series of releases.
Legal
Offered under the Apache 2 license.