Skip to content

Commit d595d06

Browse files
committed
initial commit
1 parent 6fcc36e commit d595d06

File tree

1 file changed

+38
-6
lines changed

1 file changed

+38
-6
lines changed

opentelemetry-sdk/src/metrics/meter.rs

Lines changed: 38 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -179,19 +179,30 @@ impl SdkMeter {
179179
{
180180
let validation_result = validate_instrument_config(builder.name.as_ref(), &builder.unit);
181181
if let Err(err) = validation_result {
182-
global::handle_error(err);
182+
otel_error!(
183+
name: "InstrumentCreationFailed",
184+
meter_name = self.scope.name.as_ref(),
185+
instrument_name = builder.name.as_ref(),
186+
message = "Callbacks for this observable updown counter will not be invoked.",
187+
reason = format!("{}", err));
183188
return ObservableUpDownCounter::new();
184189
}
185190

186191
match resolver.measures(
187192
InstrumentKind::ObservableUpDownCounter,
188-
builder.name,
193+
builder.name.clone(),
189194
builder.description,
190195
builder.unit,
191196
None,
192197
) {
193198
Ok(ms) => {
194199
if ms.is_empty() {
200+
otel_error!(
201+
name: "InstrumentCreationFailed",
202+
meter_name = self.scope.name.as_ref(),
203+
instrument_name = builder.name.as_ref(),
204+
message = "Callbacks for this observable updown counter will not be invoked. Check View Configuration."
205+
);
195206
return ObservableUpDownCounter::new();
196207
}
197208

@@ -206,7 +217,12 @@ impl SdkMeter {
206217
ObservableUpDownCounter::new()
207218
}
208219
Err(err) => {
209-
global::handle_error(err);
220+
otel_error!(
221+
name: "InstrumentCreationFailed",
222+
meter_name = self.scope.name.as_ref(),
223+
instrument_name = builder.name.as_ref(),
224+
message = "Callbacks for this observable updown counter will not be invoked.",
225+
reason = format!("{}", err));
210226
ObservableUpDownCounter::new()
211227
}
212228
}
@@ -222,19 +238,30 @@ impl SdkMeter {
222238
{
223239
let validation_result = validate_instrument_config(builder.name.as_ref(), &builder.unit);
224240
if let Err(err) = validation_result {
225-
global::handle_error(err);
241+
otel_error!(
242+
name: "InstrumentCreationFailed",
243+
meter_name = self.scope.name.as_ref(),
244+
instrument_name = builder.name.as_ref(),
245+
message = "Callbacks for this observable gauge will not be invoked.",
246+
reason = format!("{}", err));
226247
return ObservableGauge::new();
227248
}
228249

229250
match resolver.measures(
230251
InstrumentKind::ObservableGauge,
231-
builder.name,
252+
builder.name.clone(),
232253
builder.description,
233254
builder.unit,
234255
None,
235256
) {
236257
Ok(ms) => {
237258
if ms.is_empty() {
259+
otel_error!(
260+
name: "InstrumentCreationFailed",
261+
meter_name = self.scope.name.as_ref(),
262+
instrument_name = builder.name.as_ref(),
263+
message = "Callbacks for this observable gauge will not be invoked. Check View Configuration."
264+
);
238265
return ObservableGauge::new();
239266
}
240267

@@ -249,7 +276,12 @@ impl SdkMeter {
249276
ObservableGauge::new()
250277
}
251278
Err(err) => {
252-
global::handle_error(err);
279+
otel_error!(
280+
name: "InstrumentCreationFailed",
281+
meter_name = self.scope.name.as_ref(),
282+
instrument_name = builder.name.as_ref(),
283+
message = "Callbacks for this observable gauge will not be invoked.",
284+
reason = format!("{}", err));
253285
ObservableGauge::new()
254286
}
255287
}

0 commit comments

Comments
 (0)