Skip to content

Experimental network.interface.name slipped into stable semconv due to semconv bug #3251

@lmolkova

Description

@lmolkova

network.interface.name now appears in the stable part of semantic conventions

static constexpr const char *kNetworkInterfaceName = "network.interface.name";

due to open-telemetry/semantic-conventions#1777 - there was no stability set on it. Combining it with

"exclude_stability": if $filter == "any" then [] else ["experimental"] end,

it results in network.interface.name appearing as stable and it seems to be part of a stable release now.


The question now is how to handle it:

  1. Do a breaking change - this attribute is very new and very unlikely to be used by anyone. Still, this is a reputational problem
    This is easy and can be done with this change similar to Exclude attributes without stability from stable semconv part opentelemetry-python#4391

    - "exclude_stability": if $filter == "any" then [] else ["experimental"] end,
    + "exclude_stability": if $filter == "any" then [] else ["experimental", "", null] end,
  2. Keep it around, hardcode in jinja template as deprecated. Here's how it can be done main...lmolkova:opentelemetry-cpp:workaround-network-interface-name


Additional context:

semconv 1.30.0 are coming out in the next few days and will have this attribute as experimental again. The next codegen would remove this attribute from stable part.

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingtriage/acceptedIndicates an issue or PR is ready to be actively worked on.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions