Skip to content

Commit f1f5be2

Browse files
committed
Rename some traits to be more verby
Aligns with standard introduced in #3065 Update doc comments External types updates
1 parent fe50a9d commit f1f5be2

File tree

5 files changed

+43
-46
lines changed

5 files changed

+43
-46
lines changed

rust-runtime/aws-smithy-observability-otel/external-types.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
allowed_external_types = [
22
"aws_smithy_observability::error::ObservabilityError",
3-
"aws_smithy_observability::meter::AsyncMeasurement",
3+
"aws_smithy_observability::meter::AsyncMeasure",
44
"aws_smithy_observability::meter::Histogram",
55
"aws_smithy_observability::meter::Meter",
6-
"aws_smithy_observability::meter::MeterProvider",
76
"aws_smithy_observability::meter::MonotonicCounter",
7+
"aws_smithy_observability::meter::ProvideMeter",
88
"aws_smithy_observability::meter::UpDownCounter",
99
"aws_smithy_observability::provider::TelemetryProvider",
1010
"opentelemetry_sdk::metrics::meter_provider::SdkMeterProvider",

rust-runtime/aws-smithy-observability-otel/src/meter.rs

+17-17
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ use crate::attributes::kv_from_option_attr;
1212
use aws_smithy_observability::attributes::{Attributes, Context};
1313
use aws_smithy_observability::error::{ErrorKind, ObservabilityError};
1414
pub use aws_smithy_observability::meter::{
15-
AsyncMeasurement, Histogram, Meter, MeterProvider, MonotonicCounter, UpDownCounter,
15+
AsyncMeasure, Histogram, Meter, MonotonicCounter, ProvideMeter, UpDownCounter,
1616
};
1717
pub use aws_smithy_observability::provider::TelemetryProvider;
1818
use opentelemetry::metrics::{
@@ -49,7 +49,7 @@ impl MonotonicCounter for MonotonicCounterWrap {
4949

5050
#[derive(Debug)]
5151
struct GaugeWrap(OtelObservableGauge<f64>);
52-
impl AsyncMeasurement for GaugeWrap {
52+
impl AsyncMeasure for GaugeWrap {
5353
type Value = f64;
5454

5555
fn record(
@@ -68,7 +68,7 @@ impl AsyncMeasurement for GaugeWrap {
6868

6969
#[derive(Debug)]
7070
struct AsyncUpDownCounterWrap(OtelObservableUpDownCounter<i64>);
71-
impl AsyncMeasurement for AsyncUpDownCounterWrap {
71+
impl AsyncMeasure for AsyncUpDownCounterWrap {
7272
type Value = i64;
7373

7474
fn record(
@@ -87,7 +87,7 @@ impl AsyncMeasurement for AsyncUpDownCounterWrap {
8787

8888
#[derive(Debug)]
8989
struct AsyncMonotonicCounterWrap(OtelObservableCounter<u64>);
90-
impl AsyncMeasurement for AsyncMonotonicCounterWrap {
90+
impl AsyncMeasure for AsyncMonotonicCounterWrap {
9191
type Value = u64;
9292

9393
fn record(
@@ -105,7 +105,7 @@ impl AsyncMeasurement for AsyncMonotonicCounterWrap {
105105
}
106106

107107
struct AsyncInstrumentWrap<'a, T>(&'a (dyn OtelAsyncInstrument<T> + Send + Sync));
108-
impl<T> AsyncMeasurement for AsyncInstrumentWrap<'_, T> {
108+
impl<T> AsyncMeasure for AsyncInstrumentWrap<'_, T> {
109109
type Value = T;
110110

111111
fn record(
@@ -144,10 +144,10 @@ impl Meter for MeterWrap {
144144
fn create_gauge(
145145
&self,
146146
name: String,
147-
callback: Box<dyn Fn(&dyn AsyncMeasurement<Value = f64>) + Send + Sync>,
147+
callback: Box<dyn Fn(&dyn AsyncMeasure<Value = f64>) + Send + Sync>,
148148
units: Option<String>,
149149
description: Option<String>,
150-
) -> Box<dyn AsyncMeasurement<Value = f64>> {
150+
) -> Box<dyn AsyncMeasure<Value = f64>> {
151151
let mut builder = self.f64_observable_gauge(name).with_callback(
152152
move |input: &dyn OtelAsyncInstrument<f64>| {
153153
callback(&AsyncInstrumentWrap(input));
@@ -186,10 +186,10 @@ impl Meter for MeterWrap {
186186
fn create_async_up_down_counter(
187187
&self,
188188
name: String,
189-
callback: Box<dyn Fn(&dyn AsyncMeasurement<Value = i64>) + Send + Sync>,
189+
callback: Box<dyn Fn(&dyn AsyncMeasure<Value = i64>) + Send + Sync>,
190190
units: Option<String>,
191191
description: Option<String>,
192-
) -> Box<dyn AsyncMeasurement<Value = i64>> {
192+
) -> Box<dyn AsyncMeasure<Value = i64>> {
193193
let mut builder = self.i64_observable_up_down_counter(name).with_callback(
194194
move |input: &dyn OtelAsyncInstrument<i64>| {
195195
callback(&AsyncInstrumentWrap(input));
@@ -228,10 +228,10 @@ impl Meter for MeterWrap {
228228
fn create_async_monotonic_counter(
229229
&self,
230230
name: String,
231-
callback: Box<dyn Fn(&dyn AsyncMeasurement<Value = u64>) + Send + Sync>,
231+
callback: Box<dyn Fn(&dyn AsyncMeasure<Value = u64>) + Send + Sync>,
232232
units: Option<String>,
233233
description: Option<String>,
234-
) -> Box<dyn AsyncMeasurement<Value = u64>> {
234+
) -> Box<dyn AsyncMeasure<Value = u64>> {
235235
let mut builder = self.u64_observable_counter(name).with_callback(
236236
move |input: &dyn OtelAsyncInstrument<u64>| {
237237
callback(&AsyncInstrumentWrap(input));
@@ -268,7 +268,7 @@ impl Meter for MeterWrap {
268268
}
269269
}
270270

271-
/// An OpenTelemetry based implementation of the AWS SDK's [MeterProvider] trait
271+
/// An OpenTelemetry based implementation of the AWS SDK's [ProvideMeter] trait
272272
#[non_exhaustive]
273273
#[derive(Debug)]
274274
pub struct AwsSdkOtelMeterProvider {
@@ -300,7 +300,7 @@ impl AwsSdkOtelMeterProvider {
300300
}
301301
}
302302

303-
impl MeterProvider for AwsSdkOtelMeterProvider {
303+
impl ProvideMeter for AwsSdkOtelMeterProvider {
304304
fn get_meter(&self, scope: &'static str, _attributes: Option<&Attributes>) -> Box<dyn Meter> {
305305
Box::new(MeterWrap(self.meter_provider.meter(scope)))
306306
}
@@ -314,7 +314,7 @@ impl MeterProvider for AwsSdkOtelMeterProvider {
314314
mod tests {
315315

316316
use aws_smithy_observability::attributes::{AttributeValue, Attributes};
317-
use aws_smithy_observability::meter::AsyncMeasurement;
317+
use aws_smithy_observability::meter::AsyncMeasure;
318318
use aws_smithy_observability::provider::TelemetryProvider;
319319
use opentelemetry_sdk::metrics::{
320320
data::{Gauge, Histogram, Sum},
@@ -408,7 +408,7 @@ mod tests {
408408
let gauge = dyn_sdk_meter.create_gauge(
409409
"TestGauge".to_string(),
410410
// Callback function records another value with different attributes so it is deduped
411-
Box::new(|measurement: &dyn AsyncMeasurement<Value = f64>| {
411+
Box::new(|measurement: &dyn AsyncMeasure<Value = f64>| {
412412
let mut attrs = Attributes::new();
413413
attrs.set(
414414
"TestGaugeAttr",
@@ -423,7 +423,7 @@ mod tests {
423423

424424
let async_ud_counter = dyn_sdk_meter.create_async_up_down_counter(
425425
"TestAsyncUpDownCounter".to_string(),
426-
Box::new(|measurement: &dyn AsyncMeasurement<Value = i64>| {
426+
Box::new(|measurement: &dyn AsyncMeasure<Value = i64>| {
427427
let mut attrs = Attributes::new();
428428
attrs.set(
429429
"TestAsyncUpDownCounterAttr",
@@ -438,7 +438,7 @@ mod tests {
438438

439439
let async_mono_counter = dyn_sdk_meter.create_async_monotonic_counter(
440440
"TestAsyncMonoCounter".to_string(),
441-
Box::new(|measurement: &dyn AsyncMeasurement<Value = u64>| {
441+
Box::new(|measurement: &dyn AsyncMeasure<Value = u64>| {
442442
let mut attrs = Attributes::new();
443443
attrs.set(
444444
"TestAsyncMonoCounterAttr",

rust-runtime/aws-smithy-observability/src/meter.rs

+8-8
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ use crate::attributes::{Attributes, Context};
1010
use std::fmt::Debug;
1111

1212
/// Provides named instances of [Meter].
13-
pub trait MeterProvider: Send + Sync + Debug {
13+
pub trait ProvideMeter: Send + Sync + Debug {
1414
/// Get or create a named [Meter].
1515
fn get_meter(&self, scope: &'static str, attributes: Option<&Attributes>) -> Box<dyn Meter>;
1616

@@ -25,10 +25,10 @@ pub trait Meter: Send + Sync + Debug {
2525
fn create_gauge(
2626
&self,
2727
name: String,
28-
callback: Box<dyn Fn(&dyn AsyncMeasurement<Value = f64>) + Send + Sync>,
28+
callback: Box<dyn Fn(&dyn AsyncMeasure<Value = f64>) + Send + Sync>,
2929
units: Option<String>,
3030
description: Option<String>,
31-
) -> Box<dyn AsyncMeasurement<Value = f64>>;
31+
) -> Box<dyn AsyncMeasure<Value = f64>>;
3232

3333
/// Create a new [UpDownCounter].
3434
fn create_up_down_counter(
@@ -43,10 +43,10 @@ pub trait Meter: Send + Sync + Debug {
4343
fn create_async_up_down_counter(
4444
&self,
4545
name: String,
46-
callback: Box<dyn Fn(&dyn AsyncMeasurement<Value = i64>) + Send + Sync>,
46+
callback: Box<dyn Fn(&dyn AsyncMeasure<Value = i64>) + Send + Sync>,
4747
units: Option<String>,
4848
description: Option<String>,
49-
) -> Box<dyn AsyncMeasurement<Value = i64>>;
49+
) -> Box<dyn AsyncMeasure<Value = i64>>;
5050

5151
/// Create a new [MonotonicCounter].
5252
fn create_monotonic_counter(
@@ -61,10 +61,10 @@ pub trait Meter: Send + Sync + Debug {
6161
fn create_async_monotonic_counter(
6262
&self,
6363
name: String,
64-
callback: Box<dyn Fn(&dyn AsyncMeasurement<Value = u64>) + Send + Sync>,
64+
callback: Box<dyn Fn(&dyn AsyncMeasure<Value = u64>) + Send + Sync>,
6565
units: Option<String>,
6666
description: Option<String>,
67-
) -> Box<dyn AsyncMeasurement<Value = u64>>;
67+
) -> Box<dyn AsyncMeasure<Value = u64>>;
6868

6969
/// Create a new [Histogram].
7070
fn create_histogram(
@@ -94,7 +94,7 @@ pub trait UpDownCounter: Send + Sync + Debug {
9494
}
9595

9696
/// A measurement that can be taken asynchronously.
97-
pub trait AsyncMeasurement: Send + Sync + Debug {
97+
pub trait AsyncMeasure: Send + Sync + Debug {
9898
/// The type recorded by the measurement.
9999
type Value;
100100

rust-runtime/aws-smithy-observability/src/noop.rs

+9-9
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@ use std::marker::PhantomData;
1010

1111
use crate::{
1212
attributes::{Attributes, Context},
13-
meter::{AsyncMeasurement, Histogram, Meter, MeterProvider, MonotonicCounter, UpDownCounter},
13+
meter::{AsyncMeasure, Histogram, Meter, MonotonicCounter, ProvideMeter, UpDownCounter},
1414
};
1515

1616
#[derive(Debug)]
1717
pub(crate) struct NoopMeterProvider;
18-
impl MeterProvider for NoopMeterProvider {
18+
impl ProvideMeter for NoopMeterProvider {
1919
fn get_meter(&self, _scope: &'static str, _attributes: Option<&Attributes>) -> Box<dyn Meter> {
2020
Box::new(NoopMeter)
2121
}
@@ -31,10 +31,10 @@ impl Meter for NoopMeter {
3131
fn create_gauge(
3232
&self,
3333
_name: String,
34-
_callback: Box<dyn Fn(&dyn AsyncMeasurement<Value = f64>) + Send + Sync>,
34+
_callback: Box<dyn Fn(&dyn AsyncMeasure<Value = f64>) + Send + Sync>,
3535
_units: Option<String>,
3636
_description: Option<String>,
37-
) -> Box<dyn AsyncMeasurement<Value = f64>> {
37+
) -> Box<dyn AsyncMeasure<Value = f64>> {
3838
Box::new(NoopAsyncMeasurement(PhantomData::<f64>))
3939
}
4040

@@ -50,10 +50,10 @@ impl Meter for NoopMeter {
5050
fn create_async_up_down_counter(
5151
&self,
5252
_name: String,
53-
_callback: Box<dyn Fn(&dyn AsyncMeasurement<Value = i64>) + Send + Sync>,
53+
_callback: Box<dyn Fn(&dyn AsyncMeasure<Value = i64>) + Send + Sync>,
5454
_units: Option<String>,
5555
_description: Option<String>,
56-
) -> Box<dyn AsyncMeasurement<Value = i64>> {
56+
) -> Box<dyn AsyncMeasure<Value = i64>> {
5757
Box::new(NoopAsyncMeasurement(PhantomData::<i64>))
5858
}
5959

@@ -69,10 +69,10 @@ impl Meter for NoopMeter {
6969
fn create_async_monotonic_counter(
7070
&self,
7171
_name: String,
72-
_callback: Box<dyn Fn(&dyn AsyncMeasurement<Value = u64>) + Send + Sync>,
72+
_callback: Box<dyn Fn(&dyn AsyncMeasure<Value = u64>) + Send + Sync>,
7373
_units: Option<String>,
7474
_description: Option<String>,
75-
) -> Box<dyn AsyncMeasurement<Value = u64>> {
75+
) -> Box<dyn AsyncMeasure<Value = u64>> {
7676
Box::new(NoopAsyncMeasurement(PhantomData::<u64>))
7777
}
7878

@@ -88,7 +88,7 @@ impl Meter for NoopMeter {
8888

8989
#[derive(Debug)]
9090
struct NoopAsyncMeasurement<T: Send + Sync + Debug>(PhantomData<T>);
91-
impl<T: Send + Sync + Debug> AsyncMeasurement for NoopAsyncMeasurement<T> {
91+
impl<T: Send + Sync + Debug> AsyncMeasure for NoopAsyncMeasurement<T> {
9292
type Value = T;
9393

9494
fn record(&self, _value: T, _attributes: Option<&Attributes>, _context: Option<&dyn Context>) {}

rust-runtime/aws-smithy-observability/src/provider.rs

+7-10
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@
77
88
use std::sync::Arc;
99

10-
use crate::{meter::MeterProvider, noop::NoopMeterProvider};
10+
use crate::{meter::ProvideMeter, noop::NoopMeterProvider};
1111

1212
/// A struct to hold the various types of telemetry providers.
1313
#[non_exhaustive]
1414
pub struct TelemetryProvider {
15-
meter_provider: Box<dyn MeterProvider + Send + Sync>,
15+
meter_provider: Box<dyn ProvideMeter + Send + Sync>,
1616
}
1717

1818
impl TelemetryProvider {
@@ -30,8 +30,8 @@ impl TelemetryProvider {
3030
}
3131
}
3232

33-
/// Get the set [MeterProvider]
34-
pub fn meter_provider(&self) -> &(dyn MeterProvider + Send + Sync) {
33+
/// Get the set [ProvideMeter]
34+
pub fn meter_provider(&self) -> &(dyn ProvideMeter + Send + Sync) {
3535
self.meter_provider.as_ref()
3636
}
3737
}
@@ -51,15 +51,12 @@ impl Default for TelemetryProvider {
5151
/// A builder for [TelemetryProvider].
5252
#[non_exhaustive]
5353
pub struct TelemetryProviderBuilder {
54-
meter_provider: Box<dyn MeterProvider + Send + Sync>,
54+
meter_provider: Box<dyn ProvideMeter + Send + Sync>,
5555
}
5656

5757
impl TelemetryProviderBuilder {
58-
/// Set the [MeterProvider].
59-
pub fn meter_provider(
60-
mut self,
61-
meter_provider: impl MeterProvider + Send + Sync + 'static,
62-
) -> Self {
58+
/// Set the [ProvideMeter].
59+
pub fn meter_provider(mut self, meter_provider: impl ProvideMeter + 'static) -> Self {
6360
self.meter_provider = Box::new(meter_provider);
6461
self
6562
}

0 commit comments

Comments
 (0)