diff --git a/distribution/server/src/assemble/LICENSE.bin.txt b/distribution/server/src/assemble/LICENSE.bin.txt
index fd393cfec9b76..10899bc0ae7aa 100644
--- a/distribution/server/src/assemble/LICENSE.bin.txt
+++ b/distribution/server/src/assemble/LICENSE.bin.txt
@@ -338,12 +338,11 @@ The Apache Software License, Version 2.0
- io.prometheus-simpleclient_tracer_otel-0.16.0.jar
- io.prometheus-simpleclient_tracer_otel_agent-0.16.0.jar
* Prometheus exporter
- - io.prometheus-prometheus-metrics-config-1.3.1.jar
- - io.prometheus-prometheus-metrics-exporter-common-1.3.1.jar
- - io.prometheus-prometheus-metrics-exporter-httpserver-1.3.1.jar
- - io.prometheus-prometheus-metrics-exposition-formats-1.3.1.jar
- - io.prometheus-prometheus-metrics-model-1.3.1.jar
- - io.prometheus-prometheus-metrics-shaded-protobuf-1.3.1.jar
+ - io.prometheus-prometheus-metrics-config-1.3.3.jar
+ - io.prometheus-prometheus-metrics-exporter-common-1.3.3.jar
+ - io.prometheus-prometheus-metrics-exporter-httpserver-1.3.3.jar
+ - io.prometheus-prometheus-metrics-exposition-formats-1.3.3.jar
+ - io.prometheus-prometheus-metrics-model-1.3.3.jar
* Jakarta Bean Validation API
- jakarta.validation-jakarta.validation-api-2.0.2.jar
- javax.validation-validation-api-1.1.0.Final.jar
@@ -516,21 +515,21 @@ The Apache Software License, Version 2.0
* RoaringBitmap
- org.roaringbitmap-RoaringBitmap-1.2.0.jar
* OpenTelemetry
- - io.opentelemetry-opentelemetry-api-1.41.0.jar
- - io.opentelemetry-opentelemetry-api-incubator-1.41.0-alpha.jar
- - io.opentelemetry-opentelemetry-context-1.41.0.jar
- - io.opentelemetry-opentelemetry-exporter-common-1.41.0.jar
- - io.opentelemetry-opentelemetry-exporter-otlp-1.41.0.jar
- - io.opentelemetry-opentelemetry-exporter-otlp-common-1.41.0.jar
- - io.opentelemetry-opentelemetry-exporter-prometheus-1.41.0-alpha.jar
- - io.opentelemetry-opentelemetry-exporter-sender-okhttp-1.41.0.jar
- - io.opentelemetry-opentelemetry-sdk-1.41.0.jar
- - io.opentelemetry-opentelemetry-sdk-common-1.41.0.jar
- - io.opentelemetry-opentelemetry-sdk-extension-autoconfigure-1.41.0.jar
- - io.opentelemetry-opentelemetry-sdk-extension-autoconfigure-spi-1.41.0.jar
- - io.opentelemetry-opentelemetry-sdk-logs-1.41.0.jar
- - io.opentelemetry-opentelemetry-sdk-metrics-1.41.0.jar
- - io.opentelemetry-opentelemetry-sdk-trace-1.41.0.jar
+ - io.opentelemetry-opentelemetry-api-1.44.1.jar
+ - io.opentelemetry-opentelemetry-api-incubator-1.44.1-alpha.jar
+ - io.opentelemetry-opentelemetry-context-1.44.1.jar
+ - io.opentelemetry-opentelemetry-exporter-common-1.44.1.jar
+ - io.opentelemetry-opentelemetry-exporter-otlp-1.44.1.jar
+ - io.opentelemetry-opentelemetry-exporter-otlp-common-1.44.1.jar
+ - io.opentelemetry-opentelemetry-exporter-prometheus-1.44.1-alpha.jar
+ - io.opentelemetry-opentelemetry-exporter-sender-okhttp-1.44.1.jar
+ - io.opentelemetry-opentelemetry-sdk-1.44.1.jar
+ - io.opentelemetry-opentelemetry-sdk-common-1.44.1.jar
+ - io.opentelemetry-opentelemetry-sdk-extension-autoconfigure-1.44.1.jar
+ - io.opentelemetry-opentelemetry-sdk-extension-autoconfigure-spi-1.44.1.jar
+ - io.opentelemetry-opentelemetry-sdk-logs-1.44.1.jar
+ - io.opentelemetry-opentelemetry-sdk-metrics-1.44.1.jar
+ - io.opentelemetry-opentelemetry-sdk-trace-1.44.1.jar
- io.opentelemetry.instrumentation-opentelemetry-instrumentation-api-1.33.6.jar
- io.opentelemetry.instrumentation-opentelemetry-instrumentation-api-semconv-1.33.6-alpha.jar
- io.opentelemetry.instrumentation-opentelemetry-resources-1.33.6-alpha.jar
diff --git a/distribution/shell/src/assemble/LICENSE.bin.txt b/distribution/shell/src/assemble/LICENSE.bin.txt
index 1601f32bb2b34..07a40d3bc1bc8 100644
--- a/distribution/shell/src/assemble/LICENSE.bin.txt
+++ b/distribution/shell/src/assemble/LICENSE.bin.txt
@@ -388,9 +388,9 @@ The Apache Software License, Version 2.0
- log4j-slf4j2-impl-2.23.1.jar
- log4j-web-2.23.1.jar
* OpenTelemetry
- - opentelemetry-api-1.41.0.jar
- - opentelemetry-api-incubator-1.41.0-alpha.jar
- - opentelemetry-context-1.41.0.jar
+ - opentelemetry-api-1.44.1.jar
+ - opentelemetry-api-incubator-1.44.1-alpha.jar
+ - opentelemetry-context-1.44.1.jar
* BookKeeper
- bookkeeper-common-allocator-4.17.1.jar
diff --git a/pom.xml b/pom.xml
index badcf0de46d22..4d1959f4085b8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -258,7 +258,7 @@ flexible messaging model and an intuitive client API.
3.4.3
1.5.2-3
2.0.6
- 1.41.0
+ 1.44.1
${opentelemetry.version}-alpha
1.33.6
${opentelemetry.instrumentation.version}-alpha
diff --git a/pulsar-broker/src/test/java/org/apache/pulsar/broker/stats/BrokerOpenTelemetryTestUtil.java b/pulsar-broker/src/test/java/org/apache/pulsar/broker/stats/BrokerOpenTelemetryTestUtil.java
index 0d46e80a70302..3bfbf2064e156 100644
--- a/pulsar-broker/src/test/java/org/apache/pulsar/broker/stats/BrokerOpenTelemetryTestUtil.java
+++ b/pulsar-broker/src/test/java/org/apache/pulsar/broker/stats/BrokerOpenTelemetryTestUtil.java
@@ -19,6 +19,7 @@
package org.apache.pulsar.broker.stats;
import static io.opentelemetry.sdk.testing.assertj.OpenTelemetryAssertions.assertThat;
+import io.opentelemetry.api.common.AttributeKey;
import io.opentelemetry.api.common.Attributes;
import io.opentelemetry.sdk.autoconfigure.AutoConfiguredOpenTelemetrySdkBuilder;
import io.opentelemetry.sdk.metrics.data.MetricData;
@@ -52,13 +53,14 @@ public static void disableExporters(AutoConfiguredOpenTelemetrySdkBuilder sdkBui
public static void assertMetricDoubleSumValue(Collection metrics, String metricName,
Attributes attributes, Consumer valueConsumer) {
+ Map, Object> attributesMap = attributes.asMap();
assertThat(metrics)
.anySatisfy(metric -> assertThat(metric)
.hasName(metricName)
.hasDoubleSumSatisfying(sum -> sum.satisfies(
sumData -> assertThat(sumData.getPoints()).anySatisfy(
point -> {
- assertThat(point.getAttributes()).isEqualTo(attributes);
+ assertThat(point.getAttributes().asMap()).isEqualTo(attributesMap);
valueConsumer.accept(point.getValue());
}))));
}
@@ -70,13 +72,14 @@ public static void assertMetricLongSumValue(Collection metrics, Stri
public static void assertMetricLongSumValue(Collection metrics, String metricName,
Attributes attributes, Consumer valueConsumer) {
+ Map, Object> attributesMap = attributes.asMap();
assertThat(metrics)
.anySatisfy(metric -> assertThat(metric)
.hasName(metricName)
.hasLongSumSatisfying(sum -> sum.satisfies(
sumData -> assertThat(sumData.getPoints()).anySatisfy(
point -> {
- assertThat(point.getAttributes()).isEqualTo(attributes);
+ assertThat(point.getAttributes().asMap()).isEqualTo(attributesMap);
valueConsumer.accept(point.getValue());
}))));
}
@@ -88,13 +91,14 @@ public static void assertMetricLongGaugeValue(Collection metrics, St
public static void assertMetricLongGaugeValue(Collection metrics, String metricName,
Attributes attributes, Consumer valueConsumer) {
+ Map, Object> attributesMap = attributes.asMap();
assertThat(metrics)
.anySatisfy(metric -> assertThat(metric)
.hasName(metricName)
.hasLongGaugeSatisfying(gauge -> gauge.satisfies(
pointData -> assertThat(pointData.getPoints()).anySatisfy(
point -> {
- assertThat(point.getAttributes()).isEqualTo(attributes);
+ assertThat(point.getAttributes().asMap()).isEqualTo(attributesMap);
valueConsumer.accept(point.getValue());
}))));
}
@@ -106,13 +110,14 @@ public static void assertMetricDoubleGaugeValue(Collection metrics,
public static void assertMetricDoubleGaugeValue(Collection metrics, String metricName,
Attributes attributes, Consumer valueConsumer) {
+ Map, Object> attributesMap = attributes.asMap();
assertThat(metrics)
.anySatisfy(metric -> assertThat(metric)
.hasName(metricName)
.hasDoubleGaugeSatisfying(gauge -> gauge.satisfies(
pointData -> assertThat(pointData.getPoints()).anySatisfy(
point -> {
- assertThat(point.getAttributes()).isEqualTo(attributes);
+ assertThat(point.getAttributes().asMap()).isEqualTo(attributesMap);
valueConsumer.accept(point.getValue());
}))));
}
diff --git a/pulsar-broker/src/test/java/org/apache/pulsar/client/metrics/ClientMetricsTest.java b/pulsar-broker/src/test/java/org/apache/pulsar/client/metrics/ClientMetricsTest.java
index 31305123c4148..02b38acf865d4 100644
--- a/pulsar-broker/src/test/java/org/apache/pulsar/client/metrics/ClientMetricsTest.java
+++ b/pulsar-broker/src/test/java/org/apache/pulsar/client/metrics/ClientMetricsTest.java
@@ -21,7 +21,7 @@
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;
import static org.testng.Assert.fail;
-import io.opentelemetry.api.OpenTelemetry;
+import io.opentelemetry.api.common.AttributeKey;
import io.opentelemetry.api.common.Attributes;
import io.opentelemetry.sdk.OpenTelemetrySdk;
import io.opentelemetry.sdk.metrics.SdkMeterProvider;
@@ -48,7 +48,7 @@
public class ClientMetricsTest extends ProducerConsumerBase {
InMemoryMetricReader reader;
- OpenTelemetry otel;
+ OpenTelemetrySdk otel;
@BeforeMethod
@Override
@@ -67,6 +67,14 @@ protected void setup() throws Exception {
@Override
protected void cleanup() throws Exception {
super.internalCleanup();
+ if (otel != null) {
+ otel.close();
+ otel = null;
+ }
+ if (reader != null) {
+ reader.close();
+ reader = null;
+ }
}
private Map collectMetrics() {
@@ -88,8 +96,9 @@ private long getCounterValue(Map metrics, String name,
assertNotNull(md, "metric not found: " + name);
assertEquals(md.getType(), MetricDataType.LONG_SUM);
+ Map, Object> expectedAttributesMap = expectedAttributes.asMap();
for (var ex : md.getLongSumData().getPoints()) {
- if (ex.getAttributes().equals(expectedAttributes)) {
+ if (ex.getAttributes().asMap().equals(expectedAttributesMap)) {
return ex.getValue();
}
}
@@ -109,8 +118,9 @@ private long getHistoCountValue(Map metrics, String name,
assertNotNull(md, "metric not found: " + name);
assertEquals(md.getType(), MetricDataType.HISTOGRAM);
+ Map, Object> expectedAttributesMap = expectedAttributes.asMap();
for (var ex : md.getHistogramData().getPoints()) {
- if (ex.getAttributes().equals(expectedAttributes)) {
+ if (ex.getAttributes().asMap().equals(expectedAttributesMap)) {
return ex.getCount();
}
}