Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

teh-cmc
Copy link
Member

@teh-cmc teh-cmc commented Oct 1, 2025

@teh-cmc teh-cmc added exclude from changelog PRs with this won't show up in CHANGELOG.md dataplatform Rerun Data Platform integration labels Oct 1, 2025
Copy link

github-actions bot commented Oct 1, 2025

Web viewer built successfully.

Result Commit Link Manifest
465d830 https://rerun.io/viewer/pr/11399 +nightly +main

Note: This comment is updated whenever you push a commit.

@teh-cmc teh-cmc added the do-not-merge Do not merge this PR label Oct 1, 2025
Base automatically changed from cmc/fix_header_propagation to main October 2, 2025 08:55
@teh-cmc teh-cmc force-pushed the cmc/version_headers branch from c7d6aec to 465d830 Compare October 2, 2025 08:58
@teh-cmc teh-cmc removed the do-not-merge Do not merge this PR label Oct 2, 2025
@teh-cmc teh-cmc requested a review from Copilot October 2, 2025 09:00
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR implements autopropagating versioning headers throughout the Rerun system by moving OTEL service name initialization earlier and adding comprehensive version tracking for gRPC client-server communication.

  • Moves OTEL_SERVICE_NAME environment variable setup to occur before telemetry initialization
  • Adds client and server version headers that are automatically propagated in gRPC requests
  • Updates telemetry middleware to capture and log version information from both clients and servers

Reviewed Changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated no comments.

Show a summary per file
File Description
rerun_py/src/python_bridge.rs Moves OTEL service name setup outside telemetry initialization
crates/utils/re_perf_telemetry/src/grpc.rs Adds version header extraction and logging to gRPC telemetry middleware
crates/top/rerun/src/commands/entrypoint.rs Moves OTEL service name setup earlier in initialization
crates/store/re_server/src/server.rs Adds version headers layer to server gRPC middleware
crates/store/re_redap_client/src/grpc.rs Updates client type definitions and adds version headers layer
crates/store/re_protos/src/headers.rs Implements version header constants and interceptor infrastructure

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@teh-cmc teh-cmc marked this pull request as ready for review October 2, 2025 09:04
let mut name = name
.or_else(|| std::env::var("OTEL_SERVICE_NAME").ok())
.or_else(|| {
let path = std::env::current_exe().ok()?;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: isn't the exe and CARGO_PGK the same for all services for now since we have a single entry point? (I guess not for the CLI, but there was a dicussion where we said it would not be too bad of a an idea to also have the CLI in the same binary).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CARGO_PKG is the worst of them all: it will always be re_protos in this instance. So yeah, it's just layers of best effort in increasing order of shittiness 🫠

@teh-cmc teh-cmc merged commit b80b427 into main Oct 2, 2025
43 checks passed
@teh-cmc teh-cmc deleted the cmc/version_headers branch October 2, 2025 09:19
emilk pushed a commit that referenced this pull request Oct 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dataplatform Rerun Data Platform integration exclude from changelog PRs with this won't show up in CHANGELOG.md
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants