This is an automated email from the ASF dual-hosted git repository.
wlo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/gobblin.git
The following commit(s) were added to refs/heads/master by this push:
new 33660f5d0 [GOBBLIN-2059] Send empty resource if no custom configs are
specified (#3939)
33660f5d0 is described below
commit 33660f5d03d703456be73e30ea80d3310457ac7d
Author: William Lo <[email protected]>
AuthorDate: Tue Apr 30 16:28:53 2024 -0400
[GOBBLIN-2059] Send empty resource if no custom configs are specified
(#3939)
* Send empty resource if no custom configs are specified
---
.../org/apache/gobblin/metrics/OpenTelemetryMetrics.java | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)
diff --git
a/gobblin-metrics-libs/gobblin-metrics/src/main/java/org/apache/gobblin/metrics/OpenTelemetryMetrics.java
b/gobblin-metrics-libs/gobblin-metrics/src/main/java/org/apache/gobblin/metrics/OpenTelemetryMetrics.java
index baef1ab75..522568462 100644
---
a/gobblin-metrics-libs/gobblin-metrics/src/main/java/org/apache/gobblin/metrics/OpenTelemetryMetrics.java
+++
b/gobblin-metrics-libs/gobblin-metrics/src/main/java/org/apache/gobblin/metrics/OpenTelemetryMetrics.java
@@ -86,12 +86,17 @@ public class OpenTelemetryMetrics extends
OpenTelemetryMetricsBase {
log.info("Initializing OpenTelemetry metrics");
Properties metricProps =
PropertiesUtils.extractChildProperties(state.getProperties(),
ConfigurationKeys.METRICS_REPORTING_OPENTELEMETRY_CONFIGS_PREFIX);
- AttributesBuilder attributesBuilder = Attributes.builder();
- for (String key : metricProps.stringPropertyNames()) {
- attributesBuilder.put(AttributeKey.stringKey(key),
metricProps.getProperty(key));
+ // Default to empty resource because default resource still populates some
values
+ Resource metricsResource = Resource.empty();
+ if (metricProps.isEmpty()) {
+ log.warn("No OpenTelemetry metrics properties found, sending empty
resource");
+ } else {
+ AttributesBuilder attributesBuilder = Attributes.builder();
+ for (String key : metricProps.stringPropertyNames()) {
+ attributesBuilder.put(AttributeKey.stringKey(key),
metricProps.getProperty(key));
+ }
+ metricsResource =
Resource.getDefault().merge(Resource.create(attributesBuilder.build()));
}
- Resource metricsResource =
Resource.getDefault().merge(Resource.create(attributesBuilder.build()));
-
SdkMeterProvider meterProvider = SdkMeterProvider.builder()
.setResource(metricsResource)
.registerMetricReader(