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

Generate semconv/v1.28.0 #6226

Closed
MrAlias opened this issue Jan 29, 2025 · 2 comments · Fixed by #6236
Closed

Generate semconv/v1.28.0 #6226

MrAlias opened this issue Jan 29, 2025 · 2 comments · Fixed by #6236
Assignees
Milestone

Comments

@MrAlias
Copy link
Contributor

MrAlias commented Jan 29, 2025

Blocked by #5668

As this will be the first semconv package generated with the new weaver tooling. We need to audit the generated package and possibly update from the base configuration derived from the prior semconvgen tooling.

To evaluate:

  • Dropping the ASPNETCore namespace
  • Dropping the JVM namespace
  • Dropping the V8 namespace
  • Splitting attribute_groups.go into smaller files.
@MrAlias MrAlias added this to the v1.35.0 milestone Jan 29, 2025
@MrAlias MrAlias self-assigned this Jan 29, 2025
This was referenced Jan 29, 2025
MrAlias added a commit that referenced this issue Jan 31, 2025
Builds off of
#5793
Resolve #5668

This migrates the generation of our semconv packages from using the
`semconvgen` tooling to the new
[`weaver`](https://github.com/open-telemetry/weaver) project.

The configuration and templating has been added in a way to generate as
close as we can to what the `semconvgen` tooling already generated.
There are notable differences:

### Acronym/Initialism Fixes

As metioned
[here](#5898 (comment)),
the evaluated exported output of regenerating the `semconv/v1.27.0`
package resulted in the following changes:

| `weaver` | `semconvgen` |
| --- | --- |
| ASPNETCoreDiagnosticsExceptionsDescription |
AspnetcoreDiagnosticsExceptionsDescription|
| ASPNETCoreDiagnosticsExceptionsName |
AspnetcoreDiagnosticsExceptionsName|
| ASPNETCoreDiagnosticsExceptionsUnit |
AspnetcoreDiagnosticsExceptionsUnit|
| ASPNETCoreRateLimitingActiveRequestLeasesDescription |
AspnetcoreRateLimitingActiveRequestLeasesDescription|
| ASPNETCoreRateLimitingActiveRequestLeasesName |
AspnetcoreRateLimitingActiveRequestLeasesName|
| ASPNETCoreRateLimitingActiveRequestLeasesUnit |
AspnetcoreRateLimitingActiveRequestLeasesUnit|
| ASPNETCoreRateLimitingQueuedRequestsDescription |
AspnetcoreRateLimitingQueuedRequestsDescription|
| ASPNETCoreRateLimitingQueuedRequestsName |
AspnetcoreRateLimitingQueuedRequestsName|
| ASPNETCoreRateLimitingQueuedRequestsUnit |
AspnetcoreRateLimitingQueuedRequestsUnit|
| ASPNETCoreRateLimitingRequestLeaseDurationDescription |
AspnetcoreRateLimitingRequestLeaseDurationDescription|
| ASPNETCoreRateLimitingRequestLeaseDurationName |
AspnetcoreRateLimitingRequestLeaseDurationName|
| ASPNETCoreRateLimitingRequestLeaseDurationUnit |
AspnetcoreRateLimitingRequestLeaseDurationUnit|
| ASPNETCoreRateLimitingRequestTimeInQueueDescription |
AspnetcoreRateLimitingRequestTimeInQueueDescription|
| ASPNETCoreRateLimitingRequestTimeInQueueName |
AspnetcoreRateLimitingRequestTimeInQueueName|
| ASPNETCoreRateLimitingRequestTimeInQueueUnit |
AspnetcoreRateLimitingRequestTimeInQueueUnit|
| ASPNETCoreRateLimitingRequestsDescription |
AspnetcoreRateLimitingRequestsDescription|
| ASPNETCoreRateLimitingRequestsName |
AspnetcoreRateLimitingRequestsName|
| ASPNETCoreRateLimitingRequestsUnit |
AspnetcoreRateLimitingRequestsUnit|
| ASPNETCoreRoutingMatchAttemptsDescription |
AspnetcoreRoutingMatchAttemptsDescription|
| ASPNETCoreRoutingMatchAttemptsName |
AspnetcoreRoutingMatchAttemptsName|
| ASPNETCoreRoutingMatchAttemptsUnit |
AspnetcoreRoutingMatchAttemptsUnit|
| DBSystemDb2 | DBSystemDB2|
| GenAIClientOperationDurationDescription |
GenAiClientOperationDurationDescription|
| GenAIClientOperationDurationName | GenAiClientOperationDurationName|
| GenAIClientOperationDurationUnit | GenAiClientOperationDurationUnit|
| GenAIClientTokenUsageDescription | GenAiClientTokenUsageDescription|
| GenAIClientTokenUsageName | GenAiClientTokenUsageName|
| GenAIClientTokenUsageUnit | GenAiClientTokenUsageUnit|
| GenAIServerRequestDurationDescription |
GenAiServerRequestDurationDescription|
| GenAIServerRequestDurationName | GenAiServerRequestDurationName|
| GenAIServerRequestDurationUnit | GenAiServerRequestDurationUnit|
| GenAIServerTimePerOutputTokenDescription |
GenAiServerTimePerOutputTokenDescription|
| GenAIServerTimePerOutputTokenName | GenAiServerTimePerOutputTokenName|
| GenAIServerTimePerOutputTokenUnit | GenAiServerTimePerOutputTokenUnit|
| GenAIServerTimeToFirstTokenDescription |
GenAiServerTimeToFirstTokenDescription|
| GenAIServerTimeToFirstTokenName | GenAiServerTimeToFirstTokenName|
| GenAIServerTimeToFirstTokenUnit | GenAiServerTimeToFirstTokenUnit|
| GoMemoryGCGoalDescription | GoMemoryGcGoalDescription|
| GoMemoryGCGoalName | GoMemoryGcGoalName|
| GoMemoryGCGoalUnit | GoMemoryGcGoalUnit|
| JVMBufferCountDescription | JvmBufferCountDescription|
| JVMBufferCountName | JvmBufferCountName|
| JVMBufferCountUnit | JvmBufferCountUnit|
| JVMBufferMemoryLimitDescription | JvmBufferMemoryLimitDescription|
| JVMBufferMemoryLimitName | JvmBufferMemoryLimitName|
| JVMBufferMemoryLimitUnit | JvmBufferMemoryLimitUnit|
| JVMBufferMemoryUsageDescription | JvmBufferMemoryUsageDescription|
| JVMBufferMemoryUsageName | JvmBufferMemoryUsageName|
| JVMBufferMemoryUsageUnit | JvmBufferMemoryUsageUnit|
| JVMBufferMemoryUsedDescription | JvmBufferMemoryUsedDescription|
| JVMBufferMemoryUsedName | JvmBufferMemoryUsedName|
| JVMBufferMemoryUsedUnit | JvmBufferMemoryUsedUnit|
| JVMCPUCountDescription | JvmCPUCountDescription|
| JVMCPUCountName | JvmCPUCountName|
| JVMCPUCountUnit | JvmCPUCountUnit|
| JVMCPURecentUtilizationDescription |
JvmCPURecentUtilizationDescription|
| JVMCPURecentUtilizationName | JvmCPURecentUtilizationName|
| JVMCPURecentUtilizationUnit | JvmCPURecentUtilizationUnit|
| JVMCPUTimeDescription | JvmCPUTimeDescription|
| JVMCPUTimeName | JvmCPUTimeName|
| JVMCPUTimeUnit | JvmCPUTimeUnit|
| JVMClassCountDescription | JvmClassCountDescription|
| JVMClassCountName | JvmClassCountName|
| JVMClassCountUnit | JvmClassCountUnit|
| JVMClassLoadedDescription | JvmClassLoadedDescription|
| JVMClassLoadedName | JvmClassLoadedName|
| JVMClassLoadedUnit | JvmClassLoadedUnit|
| JVMClassUnloadedDescription | JvmClassUnloadedDescription|
| JVMClassUnloadedName | JvmClassUnloadedName|
| JVMClassUnloadedUnit | JvmClassUnloadedUnit|
| JVMGCDurationDescription | JvmGcDurationDescription|
| JVMGCDurationName | JvmGcDurationName|
| JVMGCDurationUnit | JvmGcDurationUnit|
| JVMMemoryCommittedDescription | JvmMemoryCommittedDescription|
| JVMMemoryCommittedName | JvmMemoryCommittedName|
| JVMMemoryCommittedUnit | JvmMemoryCommittedUnit|
| JVMMemoryInitDescription | JvmMemoryInitDescription|
| JVMMemoryInitName | JvmMemoryInitName|
| JVMMemoryInitUnit | JvmMemoryInitUnit|
| JVMMemoryLimitDescription | JvmMemoryLimitDescription|
| JVMMemoryLimitName | JvmMemoryLimitName|
| JVMMemoryLimitUnit | JvmMemoryLimitUnit|
| JVMMemoryUsedAfterLastGCDescription |
JvmMemoryUsedAfterLastGcDescription|
| JVMMemoryUsedAfterLastGCName | JvmMemoryUsedAfterLastGcName|
| JVMMemoryUsedAfterLastGCUnit | JvmMemoryUsedAfterLastGcUnit|
| JVMMemoryUsedDescription | JvmMemoryUsedDescription|
| JVMMemoryUsedName | JvmMemoryUsedName|
| JVMMemoryUsedUnit | JvmMemoryUsedUnit|
| JVMSystemCPULoad1mDescription | JvmSystemCPULoad1mDescription|
| JVMSystemCPULoad1mName | JvmSystemCPULoad1mName|
| JVMSystemCPULoad1mUnit | JvmSystemCPULoad1mUnit|
| JVMSystemCPUUtilizationDescription |
JvmSystemCPUUtilizationDescription|
| JVMSystemCPUUtilizationName | JvmSystemCPUUtilizationName|
| JVMSystemCPUUtilizationUnit | JvmSystemCPUUtilizationUnit|
| JVMThreadCountDescription | JvmThreadCountDescription|
| JVMThreadCountName | JvmThreadCountName|
| JVMThreadCountUnit | JvmThreadCountUnit|
| V8JSGCDurationDescription | V8jsGcDurationDescription|
| V8JSGCDurationName | V8jsGcDurationName|
| V8JSGCDurationUnit | V8jsGcDurationUnit|
| V8JSHeapSpaceAvailableSizeDescription |
V8jsHeapSpaceAvailableSizeDescription|
| V8JSHeapSpaceAvailableSizeName | V8jsHeapSpaceAvailableSizeName|
| V8JSHeapSpaceAvailableSizeUnit | V8jsHeapSpaceAvailableSizeUnit|
| V8JSHeapSpacePhysicalSizeDescription |
V8jsHeapSpacePhysicalSizeDescription|
| V8JSHeapSpacePhysicalSizeName | V8jsHeapSpacePhysicalSizeName|
| V8JSHeapSpacePhysicalSizeUnit | V8jsHeapSpacePhysicalSizeUnit|
| V8JSMemoryHeapLimitDescription | V8jsMemoryHeapLimitDescription|
| V8JSMemoryHeapLimitName | V8jsMemoryHeapLimitName|
| V8JSMemoryHeapLimitUnit | V8jsMemoryHeapLimitUnit|
| V8JSMemoryHeapUsedDescription | V8jsMemoryHeapUsedDescription|
| V8JSMemoryHeapUsedName | V8jsMemoryHeapUsedName|
| V8JSMemoryHeapUsedUnit | V8jsMemoryHeapUsedUnit|

An audit of these changes leads to the conclusion that they are
appropriate fixes to things that were mis-named.


### Doc changes

Also mentioned
[here](#5898 (comment)),
there documentation changes that are included. Mostly this is
unavoidable based on the new format of the semconv models, and effort
has spent ensuring nothing substantive is lost.

See the reverted commit
66523cb
for the details of how the `semconv/v1.27.0` changes.

## Next Steps

This PR has been paired down to migrate tooling. The next steps are to
generate `semconv/v1.28.0` with desired changes (i.e. maybe we don't
generate `ASPCoreNet` attrs(?)). From there the missing semconv packages
will be generated.

- #6226
- #6227
@MrAlias
Copy link
Contributor Author

MrAlias commented Jan 31, 2025

Affected by open-telemetry/weaver#584. Manually updating the semantic-convention repository as a work-around.

@MrAlias
Copy link
Contributor Author

MrAlias commented Jan 31, 2025

  • Splitting attribute_groups.go into smaller files.

Skipping this. We can address in future PRs for the package if needed.

MrAlias added a commit that referenced this issue Feb 3, 2025
Resolve #6226 

Generates the `v1.28.0` version of semantic conventions in the added
`go.opentelemetry.io/otel/semconv/v1.28.0` package.

## Key differences from `v1.27.0`

### Added to `v1.28.0`

- `AzNamespace`
- `AzNamespaceKey`
- `CloudfoundryAppID`
- `CloudfoundryAppIDKey`
- `CloudfoundryAppInstanceID`
- `CloudfoundryAppInstanceIDKey`
- `CloudfoundryAppName`
- `CloudfoundryAppNameKey`
- `CloudfoundryOrgID`
- `CloudfoundryOrgIDKey`
- `CloudfoundryOrgName`
- `CloudfoundryOrgNameKey`
- `CloudfoundryProcessID`
- `CloudfoundryProcessIDKey`
- `CloudfoundryProcessType`
- `CloudfoundryProcessTypeKey`
- `CloudfoundrySpaceID`
- `CloudfoundrySpaceIDKey`
- `CloudfoundrySpaceName`
- `CloudfoundrySpaceNameKey`
- `CloudfoundrySystemID`
- `CloudfoundrySystemIDKey`
- `CloudfoundrySystemInstanceID`
- `CloudfoundrySystemInstanceIDKey`
- `ContainerCPUUsageDescription`
- `ContainerCPUUsageName`
- `ContainerCPUUsageUnit`
- `ContainerCsiPluginName`
- `ContainerCsiPluginNameKey`
- `ContainerCsiVolumeID`
- `ContainerCsiVolumeIDKey`
- `DBResponseStatusCode`
- `DBResponseStatusCodeKey`
- `FileAccessed`
- `FileAccessedKey`
- `FileAttributes`
- `FileAttributesKey`
- `FileChanged`
- `FileChangedKey`
- `FileCreated`
- `FileCreatedKey`
- `FileForkName`
- `FileForkNameKey`
- `FileGroupID`
- `FileGroupIDKey`
- `FileGroupName`
- `FileGroupNameKey`
- `FileInode`
- `FileInodeKey`
- `FileMode`
- `FileModeKey`
- `FileModified`
- `FileModifiedKey`
- `FileOwnerID`
- `FileOwnerIDKey`
- `FileOwnerName`
- `FileOwnerNameKey`
- `FileSymbolicLinkTargetPath`
- `FileSymbolicLinkTargetPathKey`
- `GenAIOpenaiRequestResponseFormatJSONObject`
- `GenAIOpenaiRequestResponseFormatJSONSchema`
- `GenAIOpenaiRequestResponseFormatKey`
- `GenAIOpenaiRequestResponseFormatText`
- `GenAIOpenaiRequestSeed`
- `GenAIOpenaiRequestSeedKey`
- `GenAIOpenaiRequestServiceTierAuto`
- `GenAIOpenaiRequestServiceTierDefault`
- `GenAIOpenaiRequestServiceTierKey`
- `GenAIOpenaiResponseServiceTier`
- `GenAIOpenaiResponseServiceTierKey`
- `HwEnergyDescription`
- `HwEnergyName`
- `HwEnergyUnit`
- `HwErrorsDescription`
- `HwErrorsName`
- `HwErrorsUnit`
- `HwID`
- `HwIDKey`
- `HwName`
- `HwNameKey`
- `HwParent`
- `HwParentKey`
- `HwPowerDescription`
- `HwPowerName`
- `HwPowerUnit`
- `HwStateDegraded`
- `HwStateFailed`
- `HwStateKey`
- `HwStateOk`
- `HwStatusDescription`
- `HwStatusName`
- `HwStatusUnit`
- `HwTypeBattery`
- `HwTypeCPU`
- `HwTypeDiskController`
- `HwTypeEnclosure`
- `HwTypeFan`
- `HwTypeGpu`
- `HwTypeKey`
- `HwTypeLogicalDisk`
- `HwTypeMemory`
- `HwTypeNetwork`
- `HwTypePhysicalDisk`
- `HwTypePowerSupply`
- `HwTypeTapeDrive`
- `HwTypeTemperature`
- `HwTypeVoltage`
- `K8SNodeCPUTimeDescription`
- `K8SNodeCPUTimeName`
- `K8SNodeCPUTimeUnit`
- `K8SNodeCPUUsageDescription`
- `K8SNodeCPUUsageName`
- `K8SNodeCPUUsageUnit`
- `K8SNodeMemoryUsageDescription`
- `K8SNodeMemoryUsageName`
- `K8SNodeMemoryUsageUnit`
- `K8SPodCPUTimeDescription`
- `K8SPodCPUTimeName`
- `K8SPodCPUTimeUnit`
- `K8SPodCPUUsageDescription`
- `K8SPodCPUUsageName`
- `K8SPodCPUUsageUnit`
- `K8SPodMemoryUsageDescription`
- `K8SPodMemoryUsageName`
- `K8SPodMemoryUsageUnit`
- `K8SVolumeName`
- `K8SVolumeNameKey`
- `K8SVolumeTypeConfigMap`
- `K8SVolumeTypeDownwardAPI`
- `K8SVolumeTypeEmptyDir`
- `K8SVolumeTypeKey`
- `K8SVolumeTypeLocal`
- `K8SVolumeTypePersistentVolumeClaim`
- `K8SVolumeTypeSecret`
- `MessagingClientSentMessagesDescription`
- `MessagingClientSentMessagesName`
- `MessagingClientSentMessagesUnit`
- `MessagingOperationTypeSend`
- `ProcessArgsCount`
- `ProcessArgsCountKey`
- `ProcessExecutableBuildIDGnu`
- `ProcessExecutableBuildIDGnuKey`
- `ProcessExecutableBuildIDGo`
- `ProcessExecutableBuildIDGoKey`
- `ProcessExecutableBuildIDProfiling`
- `ProcessExecutableBuildIDProfilingKey`
- `ProcessTitle`
- `ProcessTitleKey`
- `ProcessUptimeDescription`
- `ProcessUptimeName`
- `ProcessUptimeUnit`
- `ProcessWorkingDirectory`
- `ProcessWorkingDirectoryKey`
- `ProfileFrameTypeCpython`
- `ProfileFrameTypeDotnet`
- `ProfileFrameTypeJVM`
- `ProfileFrameTypeKernel`
- `ProfileFrameTypeKey`
- `ProfileFrameTypeNative`
- `ProfileFrameTypePHP`
- `ProfileFrameTypePerl`
- `ProfileFrameTypeRuby`
- `ProfileFrameTypeV8JS`
- `SystemDiskLimitDescription`
- `SystemDiskLimitName`
- `SystemDiskLimitUnit`
- `SystemFilesystemLimitDescription`
- `SystemFilesystemLimitName`
- `SystemFilesystemLimitUnit`
- `SystemFilesystemUsageDescription`

### Dropped deprecations

- `AndroidStateBackground`
- `AndroidStateCreated`
- `AndroidStateForeground`
- `AndroidStateKey`
- `DBCosmosDBStatusCode`
- `DBCosmosDBStatusCodeKey`
- `GenAICompletion`
- `GenAICompletionKey`
- `GenAIPrompt`
- `GenAIPromptKey`

### Dropping the `aspnetcore` namespace

- `ASPNETCoreDiagnosticsExceptionResultAborted`
- `ASPNETCoreDiagnosticsExceptionResultHandled`
- `ASPNETCoreDiagnosticsExceptionResultKey`
- `ASPNETCoreDiagnosticsExceptionResultSkipped`
- `ASPNETCoreDiagnosticsExceptionResultUnhandled`
- `ASPNETCoreDiagnosticsHandlerType`
- `ASPNETCoreDiagnosticsHandlerTypeKey`
- `ASPNETCoreRateLimitingPolicy`
- `ASPNETCoreRateLimitingPolicyKey`
- `ASPNETCoreRateLimitingResultAcquired`
- `ASPNETCoreRateLimitingResultEndpointLimiter`
- `ASPNETCoreRateLimitingResultGlobalLimiter`
- `ASPNETCoreRateLimitingResultKey`
- `ASPNETCoreRateLimitingResultRequestCanceled`
- `ASPNETCoreRequestIsUnhandled`
- `ASPNETCoreRequestIsUnhandledKey`
- `ASPNETCoreRoutingIsFallback`
- `ASPNETCoreRoutingIsFallbackKey`
- `ASPNETCoreRoutingMatchStatusFailure`
- `ASPNETCoreRoutingMatchStatusKey`
- `ASPNETCoreRoutingMatchStatusSuccess`
- `AspnetcoreDiagnosticsExceptionsDescription`
- `AspnetcoreDiagnosticsExceptionsName`
- `AspnetcoreDiagnosticsExceptionsUnit`
- `AspnetcoreRateLimitingActiveRequestLeasesDescription`
- `AspnetcoreRateLimitingActiveRequestLeasesName`
- `AspnetcoreRateLimitingActiveRequestLeasesUnit`
- `AspnetcoreRateLimitingQueuedRequestsDescription`
- `AspnetcoreRateLimitingQueuedRequestsName`
- `AspnetcoreRateLimitingQueuedRequestsUnit`
- `AspnetcoreRateLimitingRequestLeaseDurationDescription`
- `AspnetcoreRateLimitingRequestLeaseDurationName`
- `AspnetcoreRateLimitingRequestLeaseDurationUnit`
- `AspnetcoreRateLimitingRequestTimeInQueueDescription`
- `AspnetcoreRateLimitingRequestTimeInQueueName`
- `AspnetcoreRateLimitingRequestTimeInQueueUnit`
- `AspnetcoreRateLimitingRequestsDescription`
- `AspnetcoreRateLimitingRequestsName`
- `AspnetcoreRateLimitingRequestsUnit`
- `AspnetcoreRoutingMatchAttemptsDescription`
- `AspnetcoreRoutingMatchAttemptsName`
- `AspnetcoreRoutingMatchAttemptsUnit`

### Dropping the `jvm` namespace

- `JVMBufferPoolName`
- `JVMBufferPoolNameKey`
- `JVMGCAction`
- `JVMGCActionKey`
- `JVMGCName`
- `JVMGCNameKey`
- `JVMMemoryPoolName`
- `JVMMemoryPoolNameKey`
- `JVMMemoryTypeHeap`
- `JVMMemoryTypeKey`
- `JVMMemoryTypeNonHeap`
- `JVMThreadDaemon`
- `JVMThreadDaemonKey`
- `JVMThreadStateBlocked`
- `JVMThreadStateKey`
- `JVMThreadStateNew`
- `JVMThreadStateRunnable`
- `JVMThreadStateTerminated`
- `JVMThreadStateTimedWaiting`
- `JVMThreadStateWaiting`
- `JvmBufferCountDescription`
- `JvmBufferCountName`
- `JvmBufferCountUnit`
- `JvmBufferMemoryLimitDescription`
- `JvmBufferMemoryLimitName`
- `JvmBufferMemoryLimitUnit`
- `JvmBufferMemoryUsageDescription`
- `JvmBufferMemoryUsageName`
- `JvmBufferMemoryUsageUnit`
- `JvmBufferMemoryUsedDescription`
- `JvmBufferMemoryUsedName`
- `JvmBufferMemoryUsedUnit`
- `JvmCPUCountDescription`
- `JvmCPUCountName`
- `JvmCPUCountUnit`
- `JvmCPURecentUtilizationDescription`
- `JvmCPURecentUtilizationName`
- `JvmCPURecentUtilizationUnit`
- `JvmCPUTimeDescription`
- `JvmCPUTimeName`
- `JvmCPUTimeUnit`
- `JvmClassCountDescription`
- `JvmClassCountName`
- `JvmClassCountUnit`
- `JvmClassLoadedDescription`
- `JvmClassLoadedName`
- `JvmClassLoadedUnit`
- `JvmClassUnloadedDescription`
- `JvmClassUnloadedName`
- `JvmClassUnloadedUnit`
- `JvmGcDurationDescription`
- `JvmGcDurationName`
- `JvmGcDurationUnit`
- `JvmMemoryCommittedDescription`
- `JvmMemoryCommittedName`
- `JvmMemoryCommittedUnit`
- `JvmMemoryInitDescription`
- `JvmMemoryInitName`
- `JvmMemoryInitUnit`
- `JvmMemoryLimitDescription`
- `JvmMemoryLimitName`
- `JvmMemoryLimitUnit`
- `JvmMemoryUsedAfterLastGcDescription`
- `JvmMemoryUsedAfterLastGcName`
- `JvmMemoryUsedAfterLastGcUnit`
- `JvmMemoryUsedDescription`
- `JvmMemoryUsedName`
- `JvmMemoryUsedUnit`
- `JvmSystemCPULoad1mDescription`
- `JvmSystemCPULoad1mName`
- `JvmSystemCPULoad1mUnit`
- `JvmSystemCPUUtilizationDescription`
- `JvmSystemCPUUtilizationName`
- `JvmSystemCPUUtilizationUnit`
- `JvmThreadCountDescription`
- `JvmThreadCountName`
- `JvmThreadCountUnit`


### Dropping the `nodejs` namespace

- `NodejsEventloopDelayMaxDescription`
- `NodejsEventloopDelayMaxName`
- `NodejsEventloopDelayMaxUnit`
- `NodejsEventloopDelayMeanDescription`
- `NodejsEventloopDelayMeanName`
- `NodejsEventloopDelayMeanUnit`
- `NodejsEventloopDelayMinDescription`
- `NodejsEventloopDelayMinName`
- `NodejsEventloopDelayMinUnit`
- `NodejsEventloopDelayP50Description`
- `NodejsEventloopDelayP50Name`
- `NodejsEventloopDelayP50Unit`
- `NodejsEventloopDelayP90Description`
- `NodejsEventloopDelayP90Name`
- `NodejsEventloopDelayP90Unit`
- `NodejsEventloopDelayP99Description`
- `NodejsEventloopDelayP99Name`
- `NodejsEventloopDelayP99Unit`
- `NodejsEventloopDelayStddevDescription`
- `NodejsEventloopDelayStddevName`
- `NodejsEventloopDelayStddevUnit`
- `NodejsEventloopUtilizationDescription`
- `NodejsEventloopUtilizationName`
- `NodejsEventloopUtilizationUnit`

### Dropping the `v8js` namespace

- `V8JSGCTypeIncremental`
- `V8JSGCTypeKey`
- `V8JSGCTypeMajor`
- `V8JSGCTypeMinor`
- `V8JSGCTypeWeakcb`
- `V8JSHeapSpaceNameCodeSpace`
- `V8JSHeapSpaceNameKey`
- `V8JSHeapSpaceNameLargeObjectSpace`
- `V8JSHeapSpaceNameMapSpace`
- `V8JSHeapSpaceNameNewSpace`
- `V8JSHeapSpaceNameOldSpace`
- `V8jsGcDurationDescription`
- `V8jsGcDurationName`
- `V8jsGcDurationUnit`
- `V8jsHeapSpaceAvailableSizeDescription`
- `V8jsHeapSpaceAvailableSizeName`
- `V8jsHeapSpaceAvailableSizeUnit`
- `V8jsHeapSpacePhysicalSizeDescription`
- `V8jsHeapSpacePhysicalSizeName`
- `V8jsHeapSpacePhysicalSizeUnit`
- `V8jsMemoryHeapLimitDescription`
- `V8jsMemoryHeapLimitName`
- `V8jsMemoryHeapLimitUnit`
- `V8jsMemoryHeapUsedDescription`
- `V8jsMemoryHeapUsedName`
- `V8jsMemoryHeapUsedUnit`

### Fixed Acronyms/Initialisms

- `DB2` -> `Db2` ([this is the industry usage](https://www.ibm.com/db2))
- `Ai` -> `AI`
- `Gc` -> `GC`

| `v1.28.0` | `v1.27.0` |
| --- | --- |
| DBSystemDb2 | DBSystemDB2|
| GenAIClientOperationDurationDescription |
GenAiClientOperationDurationDescription|
| GenAIClientOperationDurationName | GenAiClientOperationDurationName|
| GenAIClientOperationDurationUnit | GenAiClientOperationDurationUnit|
| GenAIClientTokenUsageDescription | GenAiClientTokenUsageDescription|
| GenAIClientTokenUsageName | GenAiClientTokenUsageName|
| GenAIClientTokenUsageUnit | GenAiClientTokenUsageUnit|
| GenAIServerRequestDurationDescription |
GenAiServerRequestDurationDescription|
| GenAIServerRequestDurationName | GenAiServerRequestDurationName|
| GenAIServerRequestDurationUnit | GenAiServerRequestDurationUnit|
| GenAIServerTimePerOutputTokenDescription |
GenAiServerTimePerOutputTokenDescription|
| GenAIServerTimePerOutputTokenName | GenAiServerTimePerOutputTokenName|
| GenAIServerTimePerOutputTokenUnit | GenAiServerTimePerOutputTokenUnit|
| GenAIServerTimeToFirstTokenDescription |
GenAiServerTimeToFirstTokenDescription|
| GenAIServerTimeToFirstTokenName | GenAiServerTimeToFirstTokenName|
| GenAIServerTimeToFirstTokenUnit | GenAiServerTimeToFirstTokenUnit|
| GoMemoryGCGoalDescription | GoMemoryGcGoalDescription|
| GoMemoryGCGoalName | GoMemoryGcGoalName|
| GoMemoryGCGoalUnit | GoMemoryGcGoalUnit|

## Build notes

### Skip the `dotnet` namespace

The [`dotnet` namespace is added in
`v1.28.0`](https://github.com/open-telemetry/semantic-conventions/tree/v1.28.0/model/dotnet).
None of the semantic conventions for this namespace are generated.

### Required semantic convention changes

Related to open-telemetry/weaver#584, this was
not generated with a direct copy of the [semantic-conventions
repository](https://github.com/open-telemetry/semantic-conventions)
checked-out at `v1.28.0`.

The latest (v0.12.0) version of `weaver` does not work with that version
of semantic-conventions. The semantic-conventions repository was updated
using the following command first:

```
$ rm model/{telemetry/resources-experimental.yaml,service/resources-experimental.yaml,feature-flag/events.yaml}
```

This removes name conflicts. These name conflicts are for things we are
not generating, but the still block the generation tooling when it first
validates the semantic-conventions.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant