File tree Expand file tree Collapse file tree 4 files changed +21
-0
lines changed
include/opentelemetry/sdk/metrics Expand file tree Collapse file tree 4 files changed +21
-0
lines changed Original file line number Diff line number Diff line change 1212#include " opentelemetry/common/timestamp.h"
1313#include " opentelemetry/nostd/function_ref.h"
1414#include " opentelemetry/nostd/span.h"
15+ #include " opentelemetry/sdk/metrics/exemplar/filter.h"
1516#include " opentelemetry/sdk/metrics/view/view_registry.h"
1617#include " opentelemetry/sdk/resource/resource.h"
1718#include " opentelemetry/version.h"
@@ -107,6 +108,9 @@ class MeterContext : public std::enable_shared_from_this<MeterContext>
107108 std::unique_ptr<MeterSelector> meter_selector,
108109 std::unique_ptr<View> view) noexcept ;
109110
111+ void SetExemplarFilter (
112+ std::unique_ptr<metrics::ExemplarFilter> exemplar_filter) noexcept ;
113+
110114 /* *
111115 * NOTE - INTERNAL method, can change in future.
112116 * Adds a meter to the list of configured meters in thread safe manner.
@@ -135,6 +139,7 @@ class MeterContext : public std::enable_shared_from_this<MeterContext>
135139 opentelemetry::sdk::resource::Resource resource_;
136140 std::vector<std::shared_ptr<CollectorHandle>> collectors_;
137141 std::unique_ptr<ViewRegistry> views_;
142+ std::unique_ptr<metrics::ExemplarFilter> exemplar_filter_;
138143 opentelemetry::common::SystemTimestamp sdk_start_ts_;
139144 std::vector<std::shared_ptr<Meter>> meters_;
140145
Original file line number Diff line number Diff line change 1010#include " opentelemetry/metrics/meter_provider.h"
1111#include " opentelemetry/nostd/shared_ptr.h"
1212#include " opentelemetry/nostd/string_view.h"
13+ #include " opentelemetry/sdk/metrics/exemplar/filter.h"
1314#include " opentelemetry/sdk/metrics/view/view_registry.h"
1415#include " opentelemetry/sdk/resource/resource.h"
1516#include " opentelemetry/version.h"
@@ -100,6 +101,9 @@ class MeterProvider final : public opentelemetry::metrics::MeterProvider
100101 std::unique_ptr<MeterSelector> meter_selector,
101102 std::unique_ptr<View> view) noexcept ;
102103
104+ void SetExemplarFilter (
105+ std::unique_ptr<metrics::ExemplarFilter> exemplar_filter) noexcept ;
106+
103107 /* *
104108 * Shutdown the meter provider.
105109 */
Original file line number Diff line number Diff line change @@ -74,6 +74,12 @@ void MeterContext::AddView(std::unique_ptr<InstrumentSelector> instrument_select
7474 views_->AddView (std::move (instrument_selector), std::move (meter_selector), std::move (view));
7575}
7676
77+ void MeterContext::SetExemplarFilter (
78+ std::unique_ptr<metrics::ExemplarFilter> exemplar_filter) noexcept
79+ {
80+ exemplar_filter_ = std::move (exemplar_filter);
81+ }
82+
7783void MeterContext::AddMeter (std::shared_ptr<Meter> meter)
7884{
7985 std::lock_guard<opentelemetry::common::SpinLockMutex> guard (meter_lock_);
Original file line number Diff line number Diff line change @@ -110,6 +110,12 @@ void MeterProvider::AddView(std::unique_ptr<InstrumentSelector> instrument_selec
110110 std::move (view));
111111}
112112
113+ void MeterProvider::SetExemplarFilter (
114+ std::unique_ptr<metrics::ExemplarFilter> exemplar_filter) noexcept
115+ {
116+ return context_->SetExemplarFilter (std::move (exemplar_filter));
117+ }
118+
113119/* *
114120 * Shutdown the meter provider.
115121 */
You can’t perform that action at this time.
0 commit comments