Skip to content

Conversation

@bachgarash
Copy link
Contributor

Closes #6904

This PR adds a helper method to semconv package to set ErrorType attribute easily.

@codecov
Copy link

codecov bot commented Jul 3, 2025

Codecov Report

Attention: Patch coverage is 0% with 16 lines in your changes missing coverage. Please review.

Project coverage is 82.7%. Comparing base (73b2cd3) to head (dd55179).
Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
semconv/v1.34.0/error_type.go 0.0% 16 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##            main   #6962     +/-   ##
=======================================
- Coverage   82.8%   82.7%   -0.1%     
=======================================
  Files        261     262      +1     
  Lines      24309   24325     +16     
=======================================
  Hits       20138   20138             
- Misses      3796    3812     +16     
  Partials     375     375             
Files with missing lines Coverage Δ
semconv/v1.34.0/error_type.go 0.0% <0.0%> (ø)

... and 2 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@bachgarash
Copy link
Contributor Author

bachgarash commented Jul 3, 2025

Hi @pellared

I have tried to implement #6904

I was not sure if I should generate semconv package manually (which I did via make semconv-generate TAG=v1.34.0) or there is some kind of automated release process for that. Please, let me know your opinion.

Also, templated Go files seem to be not supporting import statements. I couldn't find an example, I am wondering how you handle this...

@MrAlias
Copy link
Contributor

MrAlias commented Jul 3, 2025

This is missing a changelog entry.

@pellared pellared changed the title feat: add ErrorType for semconv package 1.34.0 (#6904) semconv: add ErrorType Jul 4, 2025
@pellared pellared changed the title semconv: add ErrorType semconv: add ErrorType attribute function Jul 4, 2025
@pellared
Copy link
Member

pellared commented Jul 4, 2025

Hi @pellared

I have tried to implement #6904

Thanks for your work!

I was not sure if I should generate semconv package manually (which I did via make semconv-generate TAG=v1.34.0) or there is some kind of automated release process for that. Please, let me know your opinion.

This is the way.

Also, templated Go files seem to be not supporting import statements. I couldn't find an example, I am wondering how you handle this...

Just add the import statements to the template: #6962 (comment)

@bachgarash bachgarash force-pushed the feat/errortype-semconv-implementation branch from b00805e to 69d6770 Compare July 4, 2025 12:40
@bachgarash bachgarash force-pushed the feat/errortype-semconv-implementation branch from d63d767 to 9954aba Compare July 5, 2025 10:00
@bachgarash bachgarash requested a review from pellared July 5, 2025 10:13
@bachgarash bachgarash force-pushed the feat/errortype-semconv-implementation branch 2 times, most recently from d5b7aec to 8a23cb2 Compare July 7, 2025 18:00
@bachgarash bachgarash force-pushed the feat/errortype-semconv-implementation branch 2 times, most recently from 5231faa to 29ad265 Compare July 9, 2025 17:19
@pellared pellared requested review from MrAlias and dmathieu July 9, 2025 17:21
@bachgarash bachgarash force-pushed the feat/errortype-semconv-implementation branch from 489d8d8 to dd55179 Compare July 10, 2025 07:32
@dmathieu dmathieu merged commit 687c3f5 into open-telemetry:main Jul 10, 2025
32 of 33 checks passed
@MrAlias MrAlias added this to the v1.38.0 milestone Jul 17, 2025
@MrAlias MrAlias mentioned this pull request Aug 29, 2025
MrAlias added a commit that referenced this pull request Aug 29, 2025
This release is the last to support [Go 1.23].
The next release will require at least [Go 1.24].

### Added

- Add native histogram exemplar support in
`go.opentelemetry.io/otel/exporters/prometheus`. (#6772)
- Add template attribute functions to the
`go.opentelmetry.io/otel/semconv/v1.34.0` package. (#6939)
  - `ContainerLabel`
  - `DBOperationParameter`
  - `DBSystemParameter`
  - `HTTPRequestHeader`
  - `HTTPResponseHeader`
  - `K8SCronJobAnnotation`
  - `K8SCronJobLabel`
  - `K8SDaemonSetAnnotation`
  - `K8SDaemonSetLabel`
  - `K8SDeploymentAnnotation`
  - `K8SDeploymentLabel`
  - `K8SJobAnnotation`
  - `K8SJobLabel`
  - `K8SNamespaceAnnotation`
  - `K8SNamespaceLabel`
  - `K8SNodeAnnotation`
  - `K8SNodeLabel`
  - `K8SPodAnnotation`
  - `K8SPodLabel`
  - `K8SReplicaSetAnnotation`
  - `K8SReplicaSetLabel`
  - `K8SStatefulSetAnnotation`
  - `K8SStatefulSetLabel`
  - `ProcessEnvironmentVariable`
  - `RPCConnectRPCRequestMetadata`
  - `RPCConnectRPCResponseMetadata`
  - `RPCGRPCRequestMetadata`
  - `RPCGRPCResponseMetadata`
- Add `ErrorType` attribute helper function to the
`go.opentelmetry.io/otel/semconv/v1.34.0` package. (#6962)
- Add `WithAllowKeyDuplication` in `go.opentelemetry.io/otel/sdk/log`
which can be used to disable deduplication for log records. (#6968)
- Add `WithCardinalityLimit` option to configure the cardinality limit
in `go.opentelemetry.io/otel/sdk/metric`. (#6996, #7065, #7081, #7164,
#7165, #7179)
- Add `Clone` method to `Record` in `go.opentelemetry.io/otel/log` that
returns a copy of the record with no shared state. (#7001)
- Add experimental self-observability span and batch span processor
metrics in `go.opentelemetry.io/otel/sdk/trace`. Check the
`go.opentelemetry.io/otel/sdk/trace/internal/x` package documentation
for more information. (#7027, #6393, #7209)
- The `go.opentelemetry.io/otel/semconv/v1.36.0` package. The package
contains semantic conventions from the `v1.36.0` version of the
OpenTelemetry Semantic Conventions. See the [migration
documentation](./semconv/v1.36.0/MIGRATION.md) for information on how to
upgrade from `go.opentelemetry.io/otel/semconv/v1.34.0.`(#7032, #7041)
- Add support for configuring Prometheus name translation using
`WithTranslationStrategy` option in
`go.opentelemetry.io/otel/exporters/prometheus`. The current default
translation strategy when UTF-8 mode is enabled is
`NoUTF8EscapingWithSuffixes`, but a future release will change the
default strategy to `UnderscoreEscapingWithSuffixes` for compliance with
the specification. (#7111)
- Add experimental self-observability log metrics in
`go.opentelemetry.io/otel/sdk/log`. Check the
`go.opentelemetry.io/otel/sdk/log/internal/x` package documentation for
more information. (#7121)
- Add experimental self-observability trace exporter metrics in
`go.opentelemetry.io/otel/exporters/stdout/stdouttrace`. Check the
`go.opentelemetry.io/otel/exporters/stdout/stdouttrace/internal/x`
package documentation for more information. (#7133)
- Support testing of [Go 1.25]. (#7187)
- The `go.opentelemetry.io/otel/semconv/v1.37.0` package. The package
contains semantic conventions from the `v1.37.0` version of the
OpenTelemetry Semantic Conventions. See the [migration
documentation](./semconv/v1.37.0/MIGRATION.md) for information on how to
upgrade from `go.opentelemetry.io/otel/semconv/v1.36.0.`(#7254)

### Changed

- Optimize `TraceIDFromHex` and `SpanIDFromHex` in
`go.opentelemetry.io/otel/sdk/trace`. (#6791)
- Change `AssertEqual` in `go.opentelemetry.io/otel/log/logtest` to
accept `TestingT` in order to support benchmarks and fuzz tests. (#6908)
- Change `DefaultExemplarReservoirProviderSelector` in
`go.opentelemetry.io/otel/sdk/metric` to use `runtime.GOMAXPROCS(0)`
instead of `runtime.NumCPU()` for the `FixedSizeReservoirProvider`
default size. (#7094)

### Fixed

- `SetBody` method of `Record` in `go.opentelemetry.io/otel/sdk/log` now
deduplicates key-value collections (`log.Value` of `log.KindMap` from
`go.opentelemetry.io/otel/log`). (#7002)
- Fix `go.opentelemetry.io/otel/exporters/prometheus` to not append a
suffix if it's already present in metric name. (#7088)
- Fix the `go.opentelemetry.io/otel/exporters/stdout/stdouttrace`
self-observability component type and name. (#7195)
- Fix partial export count metric in
`go.opentelemetry.io/otel/exporters/stdout/stdouttrace`. (#7199)

### Deprecated

- Deprecate `WithoutUnits` and `WithoutCounterSuffixes` options,
preferring `WithTranslationStrategy` instead. (#7111)
- Deprecate support for `OTEL_GO_X_CARDINALITY_LIMIT` environment
variable in `go.opentelemetry.io/otel/sdk/metric`. Use
`WithCardinalityLimit` option instead. (#7166)
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 this pull request may close these issues.

semconv: Add ErrorType function

4 participants