Skip to content

Commit

Permalink
Add PeriodicReaderWithOwnThread (#2292)
Browse files Browse the repository at this point in the history
  • Loading branch information
cijothomas authored Nov 11, 2024
1 parent b833118 commit 47d5016
Show file tree
Hide file tree
Showing 4 changed files with 810 additions and 1 deletion.
8 changes: 7 additions & 1 deletion opentelemetry-sdk/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,15 @@
- Developers creating custom exporters should ensure they import these constructs from the SDK, not the API.
- [2291](https://github.com/open-telemetry/opentelemetry-rust/pull/2291) Rename `logs_level_enabled flag` to `spec_unstable_logs_enabled`. Please enable this updated flag if the feature is needed. This flag will be removed once the feature is stabilized in the specifications.


- **BREAKING**: `Temporality` enum moved from `opentelemetry_sdk::metrics::data::Temporality` to `opentelemetry_sdk::metrics::Temporality`.

- Added a new `PeriodicReader` implementation (`PeriodicReaderWithOwnThread`)
that does not rely on an async runtime, and instead creates own Thread. This
is under feature flag "experimental_metrics_periodic_reader_no_runtime". The
functionality maybe moved into existing PeriodReader or even removed in the
future. As of today, this cannot be used as-is with OTLP Metric Exporter or
any exporter that require an async runtime.

## v0.26.0
Released 2024-Sep-30

Expand Down
1 change: 1 addition & 0 deletions opentelemetry-sdk/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@ rt-tokio = ["tokio", "tokio-stream"]
rt-tokio-current-thread = ["tokio", "tokio-stream"]
rt-async-std = ["async-std"]
internal-logs = ["tracing"]
experimental_metrics_periodic_reader_no_runtime = ["metrics"]

[[bench]]
name = "context"
Expand Down
4 changes: 4 additions & 0 deletions opentelemetry-sdk/src/metrics/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,8 @@ pub(crate) mod meter;
mod meter_provider;
pub(crate) mod noop;
pub(crate) mod periodic_reader;
#[cfg(feature = "experimental_metrics_periodic_reader_no_runtime")]
pub(crate) mod periodic_reader_with_own_thread;
pub(crate) mod pipeline;
pub mod reader;
pub(crate) mod view;
Expand All @@ -60,6 +62,8 @@ pub use instrument::*;
pub use manual_reader::*;
pub use meter_provider::*;
pub use periodic_reader::*;
#[cfg(feature = "experimental_metrics_periodic_reader_no_runtime")]
pub use periodic_reader_with_own_thread::*;
pub use pipeline::Pipeline;
pub use view::*;

Expand Down
Loading

0 comments on commit 47d5016

Please sign in to comment.