Skip to content

Commit afc8ff5

Browse files
lalitbcijothomasutpilla
authored
Global error handler cleanup - UpDown Counter, Historgram, Gauge. (#2242)
Co-authored-by: Cijo Thomas <cijo.thomas@gmail.com> Co-authored-by: Utkarsh Umesan Pillai <66651184+utpilla@users.noreply.github.com>
1 parent 3bc9b3d commit afc8ff5

File tree

1 file changed

+56
-21
lines changed

1 file changed

+56
-21
lines changed

opentelemetry-sdk/src/metrics/meter.rs

+56-21
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ use core::fmt;
22
use std::{borrow::Cow, sync::Arc};
33

44
use opentelemetry::{
5-
global,
65
metrics::{
76
AsyncInstrumentBuilder, Counter, Gauge, Histogram, HistogramBuilder, InstrumentBuilder,
87
InstrumentProvider, MetricError, MetricResult, ObservableCounter, ObservableGauge,
@@ -79,7 +78,7 @@ impl SdkMeter {
7978
name: "InstrumentCreationFailed",
8079
meter_name = self.scope.name.as_ref(),
8180
instrument_name = builder.name.as_ref(),
82-
message = "Measurements from this counter will be ignored.",
81+
message = "Measurements from this Counter will be ignored.",
8382
reason = format!("{}", err)
8483
);
8584
return Counter::new(Arc::new(NoopSyncInstrument::new()));
@@ -101,7 +100,7 @@ impl SdkMeter {
101100
name: "InstrumentCreationFailed",
102101
meter_name = self.scope.name.as_ref(),
103102
instrument_name = builder.name.as_ref(),
104-
message = "Measurements from this counter will be ignored.",
103+
message = "Measurements from this Counter will be ignored.",
105104
reason = format!("{}", err)
106105
);
107106
Counter::new(Arc::new(NoopSyncInstrument::new()))
@@ -123,7 +122,7 @@ impl SdkMeter {
123122
name: "InstrumentCreationFailed",
124123
meter_name = self.scope.name.as_ref(),
125124
instrument_name = builder.name.as_ref(),
126-
message = "Callbacks for this observable counter will not be invoked.",
125+
message = "Callbacks for this ObservableCounter will not be invoked.",
127126
reason = format!("{}", err));
128127
return ObservableCounter::new();
129128
}
@@ -141,7 +140,7 @@ impl SdkMeter {
141140
name: "InstrumentCreationFailed",
142141
meter_name = self.scope.name.as_ref(),
143142
instrument_name = builder.name.as_ref(),
144-
message = "Callbacks for this observable counter will not be invoked. Check View Configuration."
143+
message = "Callbacks for this ObservableCounter will not be invoked. Check View Configuration."
145144
);
146145
return ObservableCounter::new();
147146
}
@@ -161,7 +160,7 @@ impl SdkMeter {
161160
name: "InstrumentCreationFailed",
162161
meter_name = self.scope.name.as_ref(),
163162
instrument_name = builder.name.as_ref(),
164-
message = "Callbacks for this observable counter will not be invoked.",
163+
message = "Callbacks for this ObservableCounter will not be invoked.",
165164
reason = format!("{}", err));
166165
ObservableCounter::new()
167166
}
@@ -182,7 +181,7 @@ impl SdkMeter {
182181
name: "InstrumentCreationFailed",
183182
meter_name = self.scope.name.as_ref(),
184183
instrument_name = builder.name.as_ref(),
185-
message = "Callbacks for this observable updown counter will not be invoked.",
184+
message = "Callbacks for this ObservableUpDownCounter will not be invoked.",
186185
reason = format!("{}", err));
187186
return ObservableUpDownCounter::new();
188187
}
@@ -200,7 +199,7 @@ impl SdkMeter {
200199
name: "InstrumentCreationFailed",
201200
meter_name = self.scope.name.as_ref(),
202201
instrument_name = builder.name.as_ref(),
203-
message = "Callbacks for this observable updown counter will not be invoked. Check View Configuration."
202+
message = "Callbacks for this ObservableUpDownCounter will not be invoked. Check View Configuration."
204203
);
205204
return ObservableUpDownCounter::new();
206205
}
@@ -220,7 +219,7 @@ impl SdkMeter {
220219
name: "InstrumentCreationFailed",
221220
meter_name = self.scope.name.as_ref(),
222221
instrument_name = builder.name.as_ref(),
223-
message = "Callbacks for this observable updown counter will not be invoked.",
222+
message = "Callbacks for this ObservableUpDownCounter will not be invoked.",
224223
reason = format!("{}", err));
225224
ObservableUpDownCounter::new()
226225
}
@@ -241,7 +240,7 @@ impl SdkMeter {
241240
name: "InstrumentCreationFailed",
242241
meter_name = self.scope.name.as_ref(),
243242
instrument_name = builder.name.as_ref(),
244-
message = "Callbacks for this observable gauge will not be invoked.",
243+
message = "Callbacks for this ObservableGauge will not be invoked.",
245244
reason = format!("{}", err));
246245
return ObservableGauge::new();
247246
}
@@ -259,7 +258,7 @@ impl SdkMeter {
259258
name: "InstrumentCreationFailed",
260259
meter_name = self.scope.name.as_ref(),
261260
instrument_name = builder.name.as_ref(),
262-
message = "Callbacks for this observable gauge will not be invoked. Check View Configuration."
261+
message = "Callbacks for this ObservableGauge will not be invoked. Check View Configuration."
263262
);
264263
return ObservableGauge::new();
265264
}
@@ -279,7 +278,7 @@ impl SdkMeter {
279278
name: "InstrumentCreationFailed",
280279
meter_name = self.scope.name.as_ref(),
281280
instrument_name = builder.name.as_ref(),
282-
message = "Callbacks for this observable gauge will not be invoked.",
281+
message = "Callbacks for this ObservableGauge will not be invoked.",
283282
reason = format!("{}", err));
284283
ObservableGauge::new()
285284
}
@@ -296,14 +295,20 @@ impl SdkMeter {
296295
{
297296
let validation_result = validate_instrument_config(builder.name.as_ref(), &builder.unit);
298297
if let Err(err) = validation_result {
299-
global::handle_error(err);
298+
otel_error!(
299+
name: "InstrumentCreationFailed",
300+
meter_name = self.scope.name.as_ref(),
301+
instrument_name = builder.name.as_ref(),
302+
message = "Measurements from this UpDownCounter will be ignored.",
303+
reason = format!("{}", err)
304+
);
300305
return UpDownCounter::new(Arc::new(NoopSyncInstrument::new()));
301306
}
302307

303308
match resolver
304309
.lookup(
305310
InstrumentKind::UpDownCounter,
306-
builder.name,
311+
builder.name.clone(),
307312
builder.description,
308313
builder.unit,
309314
None,
@@ -312,7 +317,13 @@ impl SdkMeter {
312317
{
313318
Ok(updown_counter) => updown_counter,
314319
Err(err) => {
315-
global::handle_error(err);
320+
otel_error!(
321+
name: "InstrumentCreationFailed",
322+
meter_name = self.scope.name.as_ref(),
323+
instrument_name = builder.name.as_ref(),
324+
message = "Measurements from this UpDownCounter will be ignored.",
325+
reason = format!("{}", err)
326+
);
316327
UpDownCounter::new(Arc::new(NoopSyncInstrument::new()))
317328
}
318329
}
@@ -328,14 +339,20 @@ impl SdkMeter {
328339
{
329340
let validation_result = validate_instrument_config(builder.name.as_ref(), &builder.unit);
330341
if let Err(err) = validation_result {
331-
global::handle_error(err);
342+
otel_error!(
343+
name: "InstrumentCreationFailed",
344+
meter_name = self.scope.name.as_ref(),
345+
instrument_name = builder.name.as_ref(),
346+
message = "Measurements from this Gauge will be ignored.",
347+
reason = format!("{}", err)
348+
);
332349
return Gauge::new(Arc::new(NoopSyncInstrument::new()));
333350
}
334351

335352
match resolver
336353
.lookup(
337354
InstrumentKind::Gauge,
338-
builder.name,
355+
builder.name.clone(),
339356
builder.description,
340357
builder.unit,
341358
None,
@@ -344,7 +361,13 @@ impl SdkMeter {
344361
{
345362
Ok(gauge) => gauge,
346363
Err(err) => {
347-
global::handle_error(err);
364+
otel_error!(
365+
name: "InstrumentCreationFailed",
366+
meter_name = self.scope.name.as_ref(),
367+
instrument_name = builder.name.as_ref(),
368+
message = "Measurements from this Gauge will be ignored.",
369+
reason = format!("{}", err)
370+
);
348371
Gauge::new(Arc::new(NoopSyncInstrument::new()))
349372
}
350373
}
@@ -360,14 +383,20 @@ impl SdkMeter {
360383
{
361384
let validation_result = validate_instrument_config(builder.name.as_ref(), &builder.unit);
362385
if let Err(err) = validation_result {
363-
global::handle_error(err);
386+
otel_error!(
387+
name: "InstrumentCreationFailed",
388+
meter_name = self.scope.name.as_ref(),
389+
instrument_name = builder.name.as_ref(),
390+
message = "Measurements from this Histogram will be ignored.",
391+
reason = format!("{}", err)
392+
);
364393
return Histogram::new(Arc::new(NoopSyncInstrument::new()));
365394
}
366395

367396
match resolver
368397
.lookup(
369398
InstrumentKind::Histogram,
370-
builder.name,
399+
builder.name.clone(),
371400
builder.description,
372401
builder.unit,
373402
builder.boundaries,
@@ -376,7 +405,13 @@ impl SdkMeter {
376405
{
377406
Ok(histogram) => histogram,
378407
Err(err) => {
379-
global::handle_error(err);
408+
otel_error!(
409+
name: "InstrumentCreationFailed",
410+
meter_name = self.scope.name.as_ref(),
411+
instrument_name = builder.name.as_ref(),
412+
message = "Measurements from this Histogram will be ignored.",
413+
reason = format!("{}", err)
414+
);
380415
Histogram::new(Arc::new(NoopSyncInstrument::new()))
381416
}
382417
}

0 commit comments

Comments
 (0)