Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

cleanup(storage): remove deprecated OpenTelemetry rpc.message.type and rpc.message.id attributes

未关闭 适合新手
#16,544 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
2/5
预计耗时
1-3 小时
新手友好度
76/100
Issue 类型
重构
描述清晰度
描述清楚
活跃度
活跃
技术栈
cpp
领域
backend

调研方向

检查 google/cloud/storage/internal/async/ 下列出的五个文件,从 tracing 实现及其测试开始。查找 rpc.message.type 和 rpc.message.id 的用法并将其删除或清理,因为 issue 指出这些属性已弃用且没有替代项。运行 reader 和 writer tracing 测试,以验证更新后的行为。

由索引模型根据 Issue 内容生成。

描述

api: storage type: cleanup

Summary

Several async Cloud Storage tracing implementations currently record span events with the hardcoded string literals /*sc::kRpcMessageType=*/"rpc.message.type" and /*sc::kRpcMessageId=*/"rpc.message.id".

In OpenTelemetry Semantic Conventions v1.40.0 (introduced in opentelemetry-cpp v1.26.0 in <opentelemetry/semconv/incubating/rpc_attributes.h>), opentelemetry::semconv::rpc::kRpcMessageType and opentelemetry::semconv::rpc::kRpcMessageId were marked OPENTELEMETRY_DEPRECATED with:

  • "reason": "obsoleted"
  • "note": "Deprecated, no replacement at this time."

Because these semantic convention attributes are obsolete upstream with no replacement, we should remove or clean up our usage of "rpc.message.type" and "rpc.message.id" in google/cloud/storage/internal/async/.

Background

  • These attributes were originally added/updated as string literals in:
    • #14373 (chore(otel): use newer messaging semantic conventions)
    • #15078 (feat(storage): Add bidiread and bidi appendable write to the async client.)
    • #16118 (fix(storage): Add telemetry tracing support for async stream Close())
  • Unlike other /*sc::...=*/ string literals across the codebase, we intentionally did not migrate these to opentelemetry::semconv::rpc::kRpcMessageType / kRpcMessageId because doing so triggers -Wdeprecated-declarations compiler warnings when building against opentelemetry-cpp >= 1.26.0.

Affected Files

  • google/cloud/storage/internal/async/object_descriptor_reader_tracing.cc
  • google/cloud/storage/internal/async/reader_connection_tracing.cc
  • google/cloud/storage/internal/async/reader_connection_tracing_test.cc
  • google/cloud/storage/internal/async/writer_connection_tracing.cc
  • google/cloud/storage/internal/async/writer_connection_tracing_test.cc
主要语言
C++
星标
659
派生
471
平均合并
1 天 10 小时
30 天内合并 PR
100

环境准备

  • 没有 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 阅读贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

googleapis/google-cloud-cpp 的其他 Issue

查看 googleapis/google-cloud-cpp 的全部 Issue

相似的 Issue

更多 C++ Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。