grpc / grpc/grpc-rust

Is there any place proper to log the grpc or http error info?

Open
#887 3 comments 0 reactions 0 assignees View on GitHub
A-tonic C-bug
Dominant language
Rust
Stars
12.5k
Forks
1.3k
Avg merge
4d 7h
Merged PRs (30d)
24

Description

## Bug Report
Just use tower-http trace's new_for_grpc.
And do server timeout test : client pass grpc-timeout 1H, and server build with timeout 1ms, here use tonic::server::timeout, not tower timeout.
Then no any log in the server tonic , even enable the tower-http trace and trace level.

Can hack the tonic service to log the time expired error.
But how can get the error info log by the middleware or get current rpc status from my service code?

### Version
0.6.2

### Platform

### Crates

### Description

Contributor guide

Open the contributing guide

Research direction

Reproduce the described server timeout test with a client grpc-timeout of 1H, tonic::server::timeout set to 1ms, and tower-http trace's new_for_grpc enabled. Compare where the timeout error is handled by the tonic service and middleware, then establish a tested way to expose or log the resulting gRPC error information.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
api, backend, observability
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.