diff options
author | Florian Klink <flokli@flokli.de> | 2024-03-08T20·59+0200 |
---|---|---|
committer | clbot <clbot@tvl.fyi> | 2024-03-09T05·47+0000 |
commit | 05deb37f442c559eed160c03beafdee04d7cbf66 (patch) | |
tree | f95fee0e3ac3fb7a9ad10d6575b752eabbad6405 /tvix/castore/src/proto | |
parent | 8f804f5d9cdba1cfc96aede1cddde1f9b15e2c43 (diff) |
fix(tvix/castore/grpc/blob): skip_all fields in instrument r/7659
This only contains the outer metadata wrapping, and that's not too interesting: > Request { metadata: MetadataMap { headers: {"content-type": > "application/grpc", "user-agent": "grpc-go/1.60.1", "te": "trailers", > "grpc-accept-encoding": "gzip"} }, message: Streaming, extensions: > Extensions } Drop these fields for now, and rely on the underlying implementations to add instrumentation for the application-specific fields. Log errors in some places where we didn't so far. Change-Id: Ia68d6c526987d3716be62a0809195401cf28512b Reviewed-on: https://cl.tvl.fyi/c/depot/+/11101 Autosubmit: flokli <flokli@flokli.de> Reviewed-by: Connor Brewster <cbrewster@hey.com> Tested-by: BuildkiteCI
Diffstat (limited to 'tvix/castore/src/proto')
-rw-r--r-- | tvix/castore/src/proto/grpc_blobservice_wrapper.rs | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/tvix/castore/src/proto/grpc_blobservice_wrapper.rs b/tvix/castore/src/proto/grpc_blobservice_wrapper.rs index 9f3f944da26f..a7f84dbe6077 100644 --- a/tvix/castore/src/proto/grpc_blobservice_wrapper.rs +++ b/tvix/castore/src/proto/grpc_blobservice_wrapper.rs @@ -86,7 +86,7 @@ where // https://github.com/tokio-rs/tokio/issues/2723#issuecomment-1534723933 type ReadStream = BoxStream<'static, Result<super::BlobChunk, Status>>; - #[instrument(skip(self))] + #[instrument(skip_all)] async fn stat( &self, request: Request<super::StatBlobRequest>, @@ -103,11 +103,14 @@ where chunks: chunk_metas, ..Default::default() })), - Err(e) => Err(e.into()), + Err(e) => { + warn!(err=%e, "failed to request chunks"); + Err(e.into()) + } } } - #[instrument(skip(self))] + #[instrument(skip_all)] async fn read( &self, request: Request<super::ReadBlobRequest>, @@ -126,11 +129,14 @@ where Ok(Response::new(Box::pin(chunks_stream))) } Ok(None) => Err(Status::not_found(format!("blob {} not found", &req_digest))), - Err(e) => Err(e.into()), + Err(e) => { + warn!(err=%e, "failed to call open_read"); + Err(e.into()) + } } } - #[instrument(skip(self))] + #[instrument(skip_all)] async fn put( &self, request: Request<Streaming<super::BlobChunk>>, |