Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Define resource semantic convention stability and justification #162

Closed
wants to merge 2 commits into from

Conversation

jsuereth
Copy link
Contributor

@jsuereth jsuereth commented Jun 3, 2021

  • Define what must remain stable in resource detection
  • Outline issues with changes to resource attributes and the associated identity of telemetry streams

NOTE: This is incomplete and posted for discussion purposes only.

*Note: if `aws` was inferred incorrectly on "Acme cloud" previously, that would not be a violation.*
- Adding new Resource attribute semantic conventions is allowed, however
existing resource detectors MUST NOT use them, only new detectors would be
allowed.
Copy link
Contributor

Choose a reason for hiding this comment

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

This last point is a bit vague. What counts as a new detector? If an attribute is added to the K8s resource definition, how would it be handled?

<!-- semconv k8s.node -->
| Attribute | Type | Description | Examples | Required |
|---|---|---|---|---|
| `k8s.node.name` | string | The name of the Node. | `node-1` | *No* |
Copy link
Contributor

Choose a reason for hiding this comment

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

How does the stability requirement interact with optional attributes?


Going forward, Resource semantic conventions will be outlined at a "Resource
detection" level. While users can merge together resource detectors, each
detector will provide a stable set of Resource attributes and labels.
Copy link
Contributor

Choose a reason for hiding this comment

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

How do resource detectors differ from the current namespacing regime for resource attributes? Is k8s.* a resource detector? Is k8s.cluster.* a resource detector?

Comment on lines +3 to +4
Outline what changes are "safe" to perform for resource semantic conventions
and which require major version bumps.
Copy link
Member

Choose a reason for hiding this comment

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

I am a bit confused as to why we need this document.

I believe that now that starting from 1.4.0 we have Telemetry Schemas, the Schemas defines what changes are safe. If the change is representable as version change in the Schema then it is safe, everything else is unsafe.

Comment on lines +39 to +41
If we assume capabilities of
[Telemetry Schema conversion](https://github.com/open-telemetry/oteps/pull/161),
then we can relax some restrictions as follows:
Copy link
Member

Choose a reason for hiding this comment

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

So, the previous paragraph assumes no schemas? Schemas are already part of the spec and will be part of 1.4.0 spec, so I do not quite understand why we need to continue evolving the behavior in the schemaless world.

@Oberon00
Copy link
Member

There is some related discussion on "identifying vs describing resource attributes" here: open-telemetry/opentelemetry-specification#1298 (comment)

@tedsuo tedsuo added the triaged label Feb 6, 2023
@tedsuo
Copy link
Contributor

tedsuo commented Feb 6, 2023

@jsuereth is this otep still relevant/needed?

@jsuereth
Copy link
Contributor Author

jsuereth commented Feb 9, 2023

@tedsuo The problem is relevant the solution is not. I'm closing this draft for now, as I'm crafting up a more targeted proposal for resource conventions for now.

@jsuereth jsuereth closed this Feb 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants