Skip to content
New issue

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

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

Already on GitHub? # to your account

opentelemetry: fix event source location #2099

Merged
merged 1 commit into from
Apr 27, 2022

Conversation

hubertbudzynski
Copy link
Contributor

Fixes: #2094

Motivation

Properly attach event's source locations.

Solution

Append the locations to events' attributes instead of span's attributes.

@hubertbudzynski hubertbudzynski requested review from jtescher and a team as code owners April 27, 2022 08:54
@jtescher jtescher added the crate/opentelemetry Related to the `tracing-opentelemetry` crate. label Apr 27, 2022
Copy link
Member

@hawkw hawkw left a comment

Choose a reason for hiding this comment

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

looks good to me, thanks for the fix!

@hawkw hawkw merged commit e0642d9 into tokio-rs:master Apr 27, 2022
hawkw pushed a commit that referenced this pull request Jun 6, 2022
Fixes: #2094

## Motivation 

Properly attach event's source locations.

## Solution

Append the locations to events' attributes instead of span's
attributes.
hawkw pushed a commit that referenced this pull request Jun 7, 2022
Fixes: #2094

## Motivation 

Properly attach event's source locations.

## Solution

Append the locations to events' attributes instead of span's
attributes.
hawkw added a commit that referenced this pull request Jun 7, 2022
# 0.17.3 (June 7, 2022)

This release adds support for emitting thread names and IDs to
OpenTelemetry, as well as recording `std::error::Error` values in a
structured manner with their source chain included. Additionally, this
release fixes issues related to event and span source code locations.

### Added

- `Layer::with_threads` to enable recording thread names/IDs according
  to [OpenTelemetry semantic conventions][thread-semconv] ([#2134])
- `Error::source` chain when recording `std::error::Error` values
  ([#2122])
- `Layer::with_location` method (replaces `Layer::with_event_location`)
  ([#2124])

### Changed

- `std::error::Error` values are now recorded using `fmt::Display`
  rather than `fmt::Debug` ([#2122])

### Fixed

- Fixed event source code locations overwriting the parent span's source
  location ([#2099])
- Fixed `Layer::with_event_location` not controlling whether locations
  are emitted for spans as well as events ([#2124])

### Deprecated

- `Layer::with_event_location`: renamed to `Layer::with_location`, as it
  now controls both span and event locations ([#2124])

[thread-semconv]: https://opentelemetry.io/docs/reference/specification/trace/semantic_conventions/span-general/#source-code-attributes
[#2134]: #2134
[#2122]: #2122
[#2124]: #2124
[#2099]: #2099
hawkw added a commit that referenced this pull request Jun 7, 2022
# 0.17.3 (June 7, 2022)

This release adds support for emitting thread names and IDs to
OpenTelemetry, as well as recording `std::error::Error` values in a
structured manner with their source chain included. Additionally, this
release fixes issues related to event and span source code locations.

### Added

- `Layer::with_threads` to enable recording thread names/IDs according
  to [OpenTelemetry semantic conventions][thread-semconv] ([#2134])
- `Error::source` chain when recording `std::error::Error` values
  ([#2122])
- `Layer::with_location` method (replaces `Layer::with_event_location`)
  ([#2124])

### Changed

- `std::error::Error` values are now recorded using `fmt::Display`
  rather than `fmt::Debug` ([#2122])

### Fixed

- Fixed event source code locations overwriting the parent span's source
  location ([#2099])
- Fixed `Layer::with_event_location` not controlling whether locations
  are emitted for spans as well as events ([#2124])

### Deprecated

- `Layer::with_event_location`: renamed to `Layer::with_location`, as it
  now controls both span and event locations ([#2124])

Thanks to new contributors @lilymara-onesignal, @hubertbudzynski, 
and @DevinCarr for contributing to this release!

[thread-semconv]: https://opentelemetry.io/docs/reference/specification/trace/semantic_conventions/span-general/#source-code-attributes
[#2134]: #2134
[#2122]: #2122
[#2124]: #2124
[#2099]: #2099
davidbarsky pushed a commit to tokio-rs/tracing-opentelemetry that referenced this pull request Mar 21, 2023
# 0.17.3 (June 7, 2022)

This release adds support for emitting thread names and IDs to
OpenTelemetry, as well as recording `std::error::Error` values in a
structured manner with their source chain included. Additionally, this
release fixes issues related to event and span source code locations.

### Added

- `Layer::with_threads` to enable recording thread names/IDs according
  to [OpenTelemetry semantic conventions][thread-semconv] ([#2134])
- `Error::source` chain when recording `std::error::Error` values
  ([#2122])
- `Layer::with_location` method (replaces `Layer::with_event_location`)
  ([#2124])

### Changed

- `std::error::Error` values are now recorded using `fmt::Display`
  rather than `fmt::Debug` ([#2122])

### Fixed

- Fixed event source code locations overwriting the parent span's source
  location ([#2099])
- Fixed `Layer::with_event_location` not controlling whether locations
  are emitted for spans as well as events ([#2124])

### Deprecated

- `Layer::with_event_location`: renamed to `Layer::with_location`, as it
  now controls both span and event locations ([#2124])

Thanks to new contributors @lilymara-onesignal, @hubertbudzynski, 
and @DevinCarr for contributing to this release!

[thread-semconv]: https://opentelemetry.io/docs/reference/specification/trace/semantic_conventions/span-general/#source-code-attributes
[#2134]: tokio-rs/tracing#2134
[#2122]: tokio-rs/tracing#2122
[#2124]: tokio-rs/tracing#2124
[#2099]: tokio-rs/tracing#2099
kaffarell pushed a commit to kaffarell/tracing that referenced this pull request May 22, 2024
Fixes: tokio-rs#2094

## Motivation 

Properly attach event's source locations.

## Solution

Append the locations to events' attributes instead of span's
attributes.
kaffarell pushed a commit to kaffarell/tracing that referenced this pull request May 22, 2024
# 0.17.3 (June 7, 2022)

This release adds support for emitting thread names and IDs to
OpenTelemetry, as well as recording `std::error::Error` values in a
structured manner with their source chain included. Additionally, this
release fixes issues related to event and span source code locations.

### Added

- `Layer::with_threads` to enable recording thread names/IDs according
  to [OpenTelemetry semantic conventions][thread-semconv] ([tokio-rs#2134])
- `Error::source` chain when recording `std::error::Error` values
  ([tokio-rs#2122])
- `Layer::with_location` method (replaces `Layer::with_event_location`)
  ([tokio-rs#2124])

### Changed

- `std::error::Error` values are now recorded using `fmt::Display`
  rather than `fmt::Debug` ([tokio-rs#2122])

### Fixed

- Fixed event source code locations overwriting the parent span's source
  location ([tokio-rs#2099])
- Fixed `Layer::with_event_location` not controlling whether locations
  are emitted for spans as well as events ([tokio-rs#2124])

### Deprecated

- `Layer::with_event_location`: renamed to `Layer::with_location`, as it
  now controls both span and event locations ([tokio-rs#2124])

Thanks to new contributors @lilymara-onesignal, @hubertbudzynski, 
and @DevinCarr for contributing to this release!

[thread-semconv]: https://opentelemetry.io/docs/reference/specification/trace/semantic_conventions/span-general/#source-code-attributes
[tokio-rs#2134]: tokio-rs#2134
[tokio-rs#2122]: tokio-rs#2122
[tokio-rs#2124]: tokio-rs#2124
[tokio-rs#2099]: tokio-rs#2099
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
crate/opentelemetry Related to the `tracing-opentelemetry` crate.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Opentelemetry layer incorrectly attaches event location attributes
3 participants