@@ -6,12 +6,9 @@ package aws.sdk.kotlin.benchmarks.service.telemetry
6
6
7
7
import aws.smithy.kotlin.runtime.ExperimentalApi
8
8
import aws.smithy.kotlin.runtime.collections.Attributes
9
- import aws.smithy.kotlin.runtime.telemetry.TelemetryProvider
9
+ import aws.smithy.kotlin.runtime.telemetry.AbstractTelemetryProvider
10
10
import aws.smithy.kotlin.runtime.telemetry.context.Context
11
- import aws.smithy.kotlin.runtime.telemetry.context.ContextManager
12
- import aws.smithy.kotlin.runtime.telemetry.logging.LoggerProvider
13
11
import aws.smithy.kotlin.runtime.telemetry.metrics.*
14
- import aws.smithy.kotlin.runtime.telemetry.trace.TracerProvider
15
12
16
13
private val capturedMetrics = mapOf (
17
14
" smithy.client.call.attempt_overhead_duration" to " Overhead" ,
@@ -23,45 +20,11 @@ private val capturedMetrics = mapOf(
23
20
)
24
21
25
22
@ExperimentalApi
26
- class BenchmarkTelemetryProvider (private val metricAggregator : MetricAggregator ) : TelemetryProvider {
27
- override val contextManager = ContextManager .None
28
- override val loggerProvider = LoggerProvider .None
29
- override val tracerProvider = TracerProvider .None
30
-
31
- override val meterProvider = object : MeterProvider {
32
- override fun getOrCreateMeter (scope : String ) = object : Meter {
33
- override fun createUpDownCounter (name : String , units : String? , description : String? ) =
34
- NoOpUpDownCounter
35
-
36
- override fun createAsyncUpDownCounter (
37
- name : String ,
38
- callback : LongUpDownCounterCallback ,
39
- units : String? ,
40
- description : String? ,
41
- ) = NoOpAsyncMeasurementHandle
42
-
43
- override fun createMonotonicCounter (name : String , units : String? , description : String? ) =
44
- NoOpMonotonicCounter
45
-
46
- override fun createLongHistogram (name : String , units : String? , description : String? ) =
47
- NoOpLongHistogram
48
-
23
+ class BenchmarkTelemetryProvider (private val metricAggregator : MetricAggregator ) : AbstractTelemetryProvider() {
24
+ override val meterProvider = object : AbstractMeterProvider () {
25
+ override fun getOrCreateMeter (scope : String ) = object : AbstractMeter () {
49
26
override fun createDoubleHistogram (name : String , units : String? , description : String? ) =
50
- capturedMetrics[name]?.let { BenchmarkDoubleHistogram (it, units) } ? : NoOpDoubleHistogram
51
-
52
- override fun createLongGauge (
53
- name : String ,
54
- callback : LongGaugeCallback ,
55
- units : String? ,
56
- description : String? ,
57
- ) = NoOpAsyncMeasurementHandle
58
-
59
- override fun createDoubleGauge (
60
- name : String ,
61
- callback : DoubleGaugeCallback ,
62
- units : String? ,
63
- description : String? ,
64
- ) = NoOpAsyncMeasurementHandle
27
+ capturedMetrics[name]?.let { BenchmarkDoubleHistogram (it, units) } ? : Histogram .DoubleNone
65
28
}
66
29
}
67
30
@@ -92,23 +55,3 @@ class BenchmarkTelemetryProvider(private val metricAggregator: MetricAggregator)
92
55
}
93
56
}
94
57
}
95
-
96
- private object NoOpAsyncMeasurementHandle : AsyncMeasurementHandle {
97
- override fun stop () { }
98
- }
99
-
100
- private object NoOpDoubleHistogram : DoubleHistogram {
101
- override fun record (value : Double , attributes : Attributes , context : Context ? ) { }
102
- }
103
-
104
- private object NoOpLongHistogram : LongHistogram {
105
- override fun record (value : Long , attributes : Attributes , context : Context ? ) { }
106
- }
107
-
108
- private object NoOpMonotonicCounter : MonotonicCounter {
109
- override fun add (value : Long , attributes : Attributes , context : Context ? ) { }
110
- }
111
-
112
- private object NoOpUpDownCounter : UpDownCounter {
113
- override fun add (value : Long , attributes : Attributes , context : Context ? ) { }
114
- }
0 commit comments