Files
upstream-mirror e241b33f26
Some checks failed
codecov / upload (push) Failing after 13m59s
CodeQL / Analyze (push) Failing after 1s
Testing / vet-proto (push) Failing after 1s
Testing / tests (arm, latest) (push) Waiting to run
Testing / extras (latest) (push) Failing after 1s
Testing / static checks (latest-1) (push) Failing after 1s
Testing / tests (-race, latest) (push) Failing after 1s
Testing / tests (i386, latest) (push) Failing after 1s
Testing / tests (latest) (push) Failing after 1s
Testing / tests (latest-1) (push) Failing after 1s
Lock Threads / lock (push) Failing after 1s
govulncheck / govulncheck (.) (push) Failing after 1s
govulncheck / govulncheck (./cmd/protoc-gen-go-grpc) (push) Failing after 1s
govulncheck / govulncheck (./gcp/observability) (push) Failing after 1s
govulncheck / govulncheck (./security/advancedtls) (push) Failing after 1s
govulncheck / govulncheck (./stats/opencensus) (push) Failing after 1s
Stale bot / stale (push) Failing after 1s
snapshot of https://github.com/grpc/grpc-go.git (master, 2026-09-15; blobs > 131072B omitted)
2026-09-15 20:40:15 +05:00

1012 B

Debugging

Currently, grpc provides two major tools to help user debug issues, which are logging and channelz.

Logs

gRPC has put substantial logging instruments on critical paths of gRPC to help users debug issues. The Log Levels doc describes what each log level means in the gRPC context.

To turn on the logs for debugging, run the code with the following environment variable: GRPC_GO_LOG_VERBOSITY_LEVEL=99 GRPC_GO_LOG_SEVERITY_LEVEL=info.

Channelz

We also provide a runtime debugging tool, Channelz, to help users with live debugging.

See the channelz blog post here (link) for details about how to use channelz service to debug live program.

Try it

The example is able to showcase how logging and channelz can help with debugging. See the channelz blog post linked above for full explanation.

go run server/main.go
go run client/main.go