semantic-conventions
semantic-conventions copied to clipboard
Add fallback for host.id in Cloud
This PR changes the semantics behind host.id calculation for Cloud.
Changes
In Cloud, it is possible for instance_id to not be retrievable from inside the instance (e.g. security concerns / restricted instance metadata). In this case, the host.id can be set from machine-id (same steps as non-containerized systems).
Without a fallback, the must wording has strong implications for clients and users in cases where the instance_id can not be automatically retrieved:
- Do not automatically populate
host.id - Urge the user to either provide
instance_idor change the configuration to make it retrievable
A (breaking) alternative to the current approach is to always populate host.id from machine-id, and use a different field for instance_id (e.g. service.instance.id)
Merge requirement checklist
- [x] CONTRIBUTING.md guidelines followed.
- [x] CHANGELOG.md updated for non-trivial changes.
- [ ] schema-next.yaml updated with changes to existing conventions.
@christos68k please do the change in the corresponding yaml file: https://github.com/open-telemetry/semantic-conventions/blob/ed7d3e0f939cbdcd6c0b6093d157d3f5e8bbc9bd/model/registry/host.yaml#L8
The tables in markdown files are generated from the model yaml files. So once you did the change in the yaml file you need to run: make table-generation. This will automatically update the tables in the markdown files.
@open-telemetry/semconv-system-approvers @open-telemetry/semconv-container-approvers PTAL
This PR was marked stale due to lack of activity. It will be closed in 7 days.
Adding a comment to keep this PR from being closed.
This PR was marked stale due to lack of activity. It will be closed in 7 days.
Closed as inactive. Feel free to reopen if this PR is still being worked on.
Could someone with rights (@mx-psi @AlexanderWert maybe?) to do so reopen this pull request?
@christos68k I have reopened this one. You will need to update the changelog entry to follow the new format: https://github.com/open-telemetry/semantic-conventions/blob/main/CONTRIBUTING.md#adding-a-changelog-entry
This PR was marked stale due to lack of activity. It will be closed in 7 days.
This PR was marked stale due to lack of activity. It will be closed in 7 days.
Given activity happening in Entity SIG - I think it's best to "wait" on major changes to resource related attributes. My own opinion on this Pr is that:
- Yes, using machine id makes sense as the default for host.id
- Having cloud-specific ids land in
host.idseems problematic from a consistency/implementation standpoint. We need to define mechanisms where we would understand how a cloud-provider Resource detector would interact with a Host-specific resource detector. This change would force the ability for us to understand merge conflcts and overrides between these two disjoint components.
As such - (while I think machine id should be the default for host.id) I think we need to hold off on this PR until more progress has been made in Entity SiG - particularly the mapping between Resource <-> Entity and conflict resolution.
This PR was marked stale due to lack of activity. It will be closed in 7 days.
Closed as inactive. Feel free to reopen if this PR is still being worked on.