diff --git a/docs/contributing/running-tests.md b/docs/contributing/running-tests.md index 3de51b0352..58ff88f840 100644 --- a/docs/contributing/running-tests.md +++ b/docs/contributing/running-tests.md @@ -61,7 +61,7 @@ If you want to run a specific smoke test: ./gradlew :smoke-tests:test --tests '*SpringBootSmokeTest*' ``` -# Smoke OpenTelemetry starter tests +## Smoke OpenTelemetry starter tests Smoke tests for the [OpenTelemetry Spring starter](../../instrumentation/spring/starters/spring-boot-starter/README.md). @@ -83,6 +83,14 @@ Some of the instrumentation tests (and all of the smoke tests) spin up docker co [testcontainers](https://www.testcontainers.org/). If you run out of space, you may wish to prune old containers, images and volumes using `docker system prune --volumes`. +## Configuring Docker alternative + +For some container environments, such as rootless Podman or a remotely hosted Docker, +testcontainers may need additional configuration to successfully run the tests. +The following environment variables can be used for configuration: + - `TESTCONTAINERS_DOCKER_SOCKET_OVERRIDE` - The location of the Docker socket on the host. Default is `/var/run/docker.sock` + - `TESTCONTAINERS_HOST_OVERRIDE` - The hostname used for container-to-container communication. Default Docker is `localhost`, but rootless Podman uses `host.containers.internal` + # Troubleshooting CI Test Failures CI test logs are pretty big around 75MB. To make it easier to troubleshoot test failures, you can download the raw logs from the CI job and then look for diff --git a/examples/distro/smoke-tests/src/test/java/com/example/javaagent/smoketest/SmokeTest.java b/examples/distro/smoke-tests/src/test/java/com/example/javaagent/smoketest/SmokeTest.java index 4ed342f388..7029b90da9 100644 --- a/examples/distro/smoke-tests/src/test/java/com/example/javaagent/smoketest/SmokeTest.java +++ b/examples/distro/smoke-tests/src/test/java/com/example/javaagent/smoketest/SmokeTest.java @@ -96,7 +96,9 @@ abstract class SmokeTest { client .newCall( new Request.Builder() - .url(String.format("http://localhost:%d/clear", backend.getMappedPort(8080))) + .url( + String.format( + "http://%s:%d/clear", backend.getHost(), backend.getMappedPort(8080))) .build()) .execute() .close(); @@ -176,7 +178,9 @@ abstract class SmokeTest { Request request = new Request.Builder() - .url(String.format("http://localhost:%d/get-traces", backend.getMappedPort(8080))) + .url( + String.format( + "http://%s:%d/get-traces", backend.getHost(), backend.getMappedPort(8080))) .build(); try (ResponseBody body = client.newCall(request).execute().body()) { diff --git a/examples/extension/src/test/java/com/example/javaagent/smoketest/IntegrationTest.java b/examples/extension/src/test/java/com/example/javaagent/smoketest/IntegrationTest.java index eccb0b5ea8..5346990bc2 100644 --- a/examples/extension/src/test/java/com/example/javaagent/smoketest/IntegrationTest.java +++ b/examples/extension/src/test/java/com/example/javaagent/smoketest/IntegrationTest.java @@ -123,7 +123,9 @@ abstract class IntegrationTest { client .newCall( new Request.Builder() - .url(String.format("http://localhost:%d/clear", backend.getMappedPort(8080))) + .url( + String.format( + "http://%s:%d/clear", backend.getHost(), backend.getMappedPort(8080))) .build()) .execute() .close(); @@ -201,7 +203,9 @@ abstract class IntegrationTest { Request request = new Request.Builder() - .url(String.format("http://localhost:%d/get-traces", backend.getMappedPort(8080))) + .url( + String.format( + "http://%s:%d/get-traces", backend.getHost(), backend.getMappedPort(8080))) .build(); try (ResponseBody body = client.newCall(request).execute().body()) { diff --git a/instrumentation/cassandra/cassandra-3.0/javaagent/src/test/java/CassandraClientTest.java b/instrumentation/cassandra/cassandra-3.0/javaagent/src/test/java/CassandraClientTest.java index 30142b4ef1..7d581375d5 100644 --- a/instrumentation/cassandra/cassandra-3.0/javaagent/src/test/java/CassandraClientTest.java +++ b/instrumentation/cassandra/cassandra-3.0/javaagent/src/test/java/CassandraClientTest.java @@ -15,7 +15,9 @@ import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension; import io.opentelemetry.semconv.NetworkAttributes; import io.opentelemetry.semconv.ServerAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; +import java.net.InetAddress; import java.net.InetSocketAddress; +import java.net.UnknownHostException; import java.time.Duration; import java.util.concurrent.Executor; import java.util.concurrent.Executors; @@ -44,11 +46,14 @@ public class CassandraClientTest { @SuppressWarnings("rawtypes") private static GenericContainer cassandra; + protected static String cassandraHost; + + protected static String cassandraIp; private static int cassandraPort; private static Cluster cluster; @BeforeAll - static void beforeAll() { + static void beforeAll() throws UnknownHostException { cassandra = new GenericContainer<>("cassandra:3") .withEnv("JVM_OPTS", "-Xmx128m -Xms128m") @@ -57,10 +62,12 @@ public class CassandraClientTest { .withStartupTimeout(Duration.ofMinutes(2)); cassandra.start(); + cassandraHost = cassandra.getHost(); + cassandraIp = InetAddress.getByName(cassandra.getHost()).getHostAddress(); cassandraPort = cassandra.getMappedPort(9042); cluster = Cluster.builder() - .addContactPointsWithPorts(new InetSocketAddress("localhost", cassandraPort)) + .addContactPointsWithPorts(new InetSocketAddress(cassandra.getHost(), cassandraPort)) .build(); } @@ -87,9 +94,9 @@ public class CassandraClientTest { .hasNoParent() .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, cassandraHost), equalTo(ServerAttributes.SERVER_PORT, cassandraPort), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, cassandraIp), equalTo(NetworkAttributes.NETWORK_PEER_PORT, cassandraPort), equalTo(DbIncubatingAttributes.DB_SYSTEM, "cassandra"), equalTo( @@ -103,9 +110,9 @@ public class CassandraClientTest { .hasNoParent() .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, cassandraHost), equalTo(ServerAttributes.SERVER_PORT, cassandraPort), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, cassandraIp), equalTo(NetworkAttributes.NETWORK_PEER_PORT, cassandraPort), equalTo(DbIncubatingAttributes.DB_SYSTEM, "cassandra"), equalTo(DbIncubatingAttributes.DB_NAME, parameter.keyspace), @@ -124,9 +131,9 @@ public class CassandraClientTest { .hasNoParent() .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, cassandraHost), equalTo(ServerAttributes.SERVER_PORT, cassandraPort), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, cassandraIp), equalTo(NetworkAttributes.NETWORK_PEER_PORT, cassandraPort), equalTo(DbIncubatingAttributes.DB_SYSTEM, "cassandra"), equalTo( @@ -165,9 +172,9 @@ public class CassandraClientTest { .hasNoParent() .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, cassandraHost), equalTo(ServerAttributes.SERVER_PORT, cassandraPort), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, cassandraIp), equalTo(NetworkAttributes.NETWORK_PEER_PORT, cassandraPort), equalTo(DbIncubatingAttributes.DB_SYSTEM, "cassandra"), equalTo( @@ -182,9 +189,9 @@ public class CassandraClientTest { .hasParent(trace.getSpan(0)) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, cassandraHost), equalTo(ServerAttributes.SERVER_PORT, cassandraPort), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, cassandraIp), equalTo(NetworkAttributes.NETWORK_PEER_PORT, cassandraPort), equalTo(DbIncubatingAttributes.DB_SYSTEM, "cassandra"), equalTo(DbIncubatingAttributes.DB_NAME, parameter.keyspace), @@ -207,9 +214,9 @@ public class CassandraClientTest { .hasParent(trace.getSpan(0)) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, cassandraHost), equalTo(ServerAttributes.SERVER_PORT, cassandraPort), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, cassandraIp), equalTo(NetworkAttributes.NETWORK_PEER_PORT, cassandraPort), equalTo(DbIncubatingAttributes.DB_SYSTEM, "cassandra"), equalTo( diff --git a/instrumentation/cassandra/cassandra-4-common/testing/src/main/java/io/opentelemetry/cassandra/v4/common/AbstractCassandraTest.java b/instrumentation/cassandra/cassandra-4-common/testing/src/main/java/io/opentelemetry/cassandra/v4/common/AbstractCassandraTest.java index 768282f18a..93bdbda788 100644 --- a/instrumentation/cassandra/cassandra-4-common/testing/src/main/java/io/opentelemetry/cassandra/v4/common/AbstractCassandraTest.java +++ b/instrumentation/cassandra/cassandra-4-common/testing/src/main/java/io/opentelemetry/cassandra/v4/common/AbstractCassandraTest.java @@ -32,7 +32,9 @@ import com.datastax.oss.driver.internal.core.config.typesafe.DefaultDriverConfig import io.opentelemetry.api.trace.SpanKind; import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension; import io.opentelemetry.semconv.NetworkAttributes; +import java.net.InetAddress; import java.net.InetSocketAddress; +import java.net.UnknownHostException; import java.time.Duration; import java.util.stream.Stream; import org.junit.jupiter.api.AfterAll; @@ -52,6 +54,10 @@ public abstract class AbstractCassandraTest { @SuppressWarnings("rawtypes") private static GenericContainer cassandra; + protected static String cassandraHost; + + protected static String cassandraIp; + protected static int cassandraPort; protected abstract InstrumentationExtension testing(); @@ -61,7 +67,7 @@ public abstract class AbstractCassandraTest { } @BeforeAll - static void beforeAll() { + static void beforeAll() throws UnknownHostException { cassandra = new GenericContainer<>("cassandra:4.0") .withEnv("JVM_OPTS", "-Xmx128m -Xms128m") @@ -70,6 +76,8 @@ public abstract class AbstractCassandraTest { .withStartupTimeout(Duration.ofMinutes(2)); cassandra.start(); + cassandraHost = cassandra.getHost(); + cassandraIp = InetAddress.getByName(cassandra.getHost()).getHostAddress(); cassandraPort = cassandra.getMappedPort(9042); } @@ -100,14 +108,9 @@ public abstract class AbstractCassandraTest { val.satisfiesAnyOf( v -> assertThat(v).isEqualTo("ipv4"), v -> assertThat(v).isEqualTo("ipv6"))), - equalTo(SERVER_ADDRESS, "localhost"), + equalTo(SERVER_ADDRESS, cassandraHost), equalTo(SERVER_PORT, cassandraPort), - satisfies( - NetworkAttributes.NETWORK_PEER_ADDRESS, - val -> - val.satisfiesAnyOf( - v -> assertThat(v).isEqualTo("127.0.0.1"), - v -> assertThat(v).isEqualTo("0:0:0:0:0:0:0:1"))), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, cassandraIp), equalTo(NetworkAttributes.NETWORK_PEER_PORT, cassandraPort), equalTo(DB_SYSTEM, "cassandra"), equalTo(DB_NAME, parameter.keyspace), @@ -159,14 +162,9 @@ public abstract class AbstractCassandraTest { val.satisfiesAnyOf( v -> assertThat(v).isEqualTo("ipv4"), v -> assertThat(v).isEqualTo("ipv6"))), - equalTo(SERVER_ADDRESS, "localhost"), + equalTo(SERVER_ADDRESS, cassandraHost), equalTo(SERVER_PORT, cassandraPort), - satisfies( - NetworkAttributes.NETWORK_PEER_ADDRESS, - val -> - val.satisfiesAnyOf( - v -> assertThat(v).isEqualTo("127.0.0.1"), - v -> assertThat(v).isEqualTo("0:0:0:0:0:0:0:1"))), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, cassandraIp), equalTo(NetworkAttributes.NETWORK_PEER_PORT, cassandraPort), equalTo(DB_SYSTEM, "cassandra"), equalTo(DB_NAME, parameter.keyspace), @@ -338,7 +336,7 @@ public abstract class AbstractCassandraTest { } protected CqlSessionBuilder addContactPoint(CqlSessionBuilder sessionBuilder) { - sessionBuilder.addContactPoint(new InetSocketAddress("localhost", cassandraPort)); + sessionBuilder.addContactPoint(new InetSocketAddress(cassandra.getHost(), cassandraPort)); return sessionBuilder; } } diff --git a/instrumentation/cassandra/cassandra-4.4/testing/src/main/java/io/opentelemetry/testing/cassandra/v4_4/AbstractCassandra44Test.java b/instrumentation/cassandra/cassandra-4.4/testing/src/main/java/io/opentelemetry/testing/cassandra/v4_4/AbstractCassandra44Test.java index 2ab1e4370b..bd3357978d 100644 --- a/instrumentation/cassandra/cassandra-4.4/testing/src/main/java/io/opentelemetry/testing/cassandra/v4_4/AbstractCassandra44Test.java +++ b/instrumentation/cassandra/cassandra-4.4/testing/src/main/java/io/opentelemetry/testing/cassandra/v4_4/AbstractCassandra44Test.java @@ -65,14 +65,9 @@ public abstract class AbstractCassandra44Test extends AbstractCassandraTest { val.satisfiesAnyOf( v -> assertThat(v).isEqualTo("ipv4"), v -> assertThat(v).isEqualTo("ipv6"))), - equalTo(SERVER_ADDRESS, "localhost"), + equalTo(SERVER_ADDRESS, cassandraHost), equalTo(SERVER_PORT, cassandraPort), - satisfies( - NetworkAttributes.NETWORK_PEER_ADDRESS, - val -> - val.satisfiesAnyOf( - v -> assertThat(v).isEqualTo("127.0.0.1"), - v -> assertThat(v).isEqualTo("0:0:0:0:0:0:0:1"))), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, cassandraIp), equalTo(NetworkAttributes.NETWORK_PEER_PORT, cassandraPort), equalTo(DB_SYSTEM, "cassandra"), equalTo(DB_NAME, parameter.keyspace), diff --git a/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive1Test/java/io/opentelemetry/javaagent/instrumentation/hibernate/reactive/v1_0/HibernateReactiveTest.java b/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive1Test/java/io/opentelemetry/javaagent/instrumentation/hibernate/reactive/v1_0/HibernateReactiveTest.java index 45b61c5ec9..fda567f2bb 100644 --- a/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive1Test/java/io/opentelemetry/javaagent/instrumentation/hibernate/reactive/v1_0/HibernateReactiveTest.java +++ b/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive1Test/java/io/opentelemetry/javaagent/instrumentation/hibernate/reactive/v1_0/HibernateReactiveTest.java @@ -47,6 +47,7 @@ class HibernateReactiveTest { private static final Vertx vertx = Vertx.vertx(); private static GenericContainer container; + private static String host; private static int port; private static EntityManagerFactory entityManagerFactory; private static Mutiny.SessionFactory mutinySessionFactory; @@ -64,7 +65,9 @@ class HibernateReactiveTest { .withStartupTimeout(Duration.ofMinutes(2)); container.start(); + host = container.getHost(); port = container.getMappedPort(5432); + System.setProperty("db.host", host); System.setProperty("db.port", String.valueOf(port)); entityManagerFactory = @@ -308,7 +311,7 @@ class HibernateReactiveTest { "select value0_.id as id1_0_0_, value0_.name as name2_0_0_ from Value value0_ where value0_.id=$?"), equalTo(DB_OPERATION, "SELECT"), equalTo(DB_SQL_TABLE, "Value"), - equalTo(SERVER_ADDRESS, "localhost"), + equalTo(SERVER_ADDRESS, host), equalTo(SERVER_PORT, port)), span -> span.hasName("callback") diff --git a/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive1Test/resources/META-INF/persistence.xml b/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive1Test/resources/META-INF/persistence.xml index c2b26d0fce..b3c690663e 100644 --- a/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive1Test/resources/META-INF/persistence.xml +++ b/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive1Test/resources/META-INF/persistence.xml @@ -10,7 +10,7 @@ - + diff --git a/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive2Test/java/io/opentelemetry/javaagent/instrumentation/hibernate/reactive/v2_0/HibernateReactiveTest.java b/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive2Test/java/io/opentelemetry/javaagent/instrumentation/hibernate/reactive/v2_0/HibernateReactiveTest.java index d98f251290..034227d557 100644 --- a/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive2Test/java/io/opentelemetry/javaagent/instrumentation/hibernate/reactive/v2_0/HibernateReactiveTest.java +++ b/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive2Test/java/io/opentelemetry/javaagent/instrumentation/hibernate/reactive/v2_0/HibernateReactiveTest.java @@ -47,6 +47,7 @@ class HibernateReactiveTest { private static final Vertx vertx = Vertx.vertx(); private static GenericContainer container; + private static String host; private static int port; private static EntityManagerFactory entityManagerFactory; private static Mutiny.SessionFactory mutinySessionFactory; @@ -64,7 +65,9 @@ class HibernateReactiveTest { .withStartupTimeout(Duration.ofMinutes(2)); container.start(); + host = container.getHost(); port = container.getMappedPort(5432); + System.setProperty("db.host", host); System.setProperty("db.port", String.valueOf(port)); entityManagerFactory = @@ -300,7 +303,7 @@ class HibernateReactiveTest { "select v1_0.id,v1_0.name from Value v1_0 where v1_0.id=$?"), equalTo(DB_OPERATION, "SELECT"), equalTo(DB_SQL_TABLE, "Value"), - equalTo(SERVER_ADDRESS, "localhost"), + equalTo(SERVER_ADDRESS, host), equalTo(SERVER_PORT, port)), span -> span.hasName("callback") diff --git a/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive2Test/resources/META-INF/persistence.xml b/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive2Test/resources/META-INF/persistence.xml index f543bd5ba5..0972582f64 100644 --- a/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive2Test/resources/META-INF/persistence.xml +++ b/instrumentation/hibernate/hibernate-reactive-1.0/javaagent/src/hibernateReactive2Test/resources/META-INF/persistence.xml @@ -10,7 +10,7 @@ - + diff --git a/instrumentation/jedis/jedis-1.4/testing/src/main/java/io/opentelemetry/javaagent/instrumentation/jedis/AbstractJedisTest.java b/instrumentation/jedis/jedis-1.4/testing/src/main/java/io/opentelemetry/javaagent/instrumentation/jedis/AbstractJedisTest.java index 9add58f733..547a4fc0ba 100644 --- a/instrumentation/jedis/jedis-1.4/testing/src/main/java/io/opentelemetry/javaagent/instrumentation/jedis/AbstractJedisTest.java +++ b/instrumentation/jedis/jedis-1.4/testing/src/main/java/io/opentelemetry/javaagent/instrumentation/jedis/AbstractJedisTest.java @@ -28,6 +28,8 @@ public abstract class AbstractJedisTest { private static final GenericContainer REDIS_SERVER = new GenericContainer<>("redis:6.2.3-alpine").withExposedPorts(6379); + private static String host; + private static int port; private static Jedis jedis; @@ -35,8 +37,9 @@ public abstract class AbstractJedisTest { @BeforeAll static void setup() { REDIS_SERVER.start(); + host = REDIS_SERVER.getHost(); port = REDIS_SERVER.getMappedPort(6379); - jedis = new Jedis("localhost", port); + jedis = new Jedis(host, port); } @AfterAll @@ -64,7 +67,7 @@ public abstract class AbstractJedisTest { equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET foo ?"), equalTo(DbIncubatingAttributes.DB_OPERATION, "SET"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port)))); } @@ -85,7 +88,7 @@ public abstract class AbstractJedisTest { equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET foo ?"), equalTo(DbIncubatingAttributes.DB_OPERATION, "SET"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port))), trace -> trace.hasSpansSatisfyingExactly( @@ -96,7 +99,7 @@ public abstract class AbstractJedisTest { equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "GET foo"), equalTo(DbIncubatingAttributes.DB_OPERATION, "GET"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port)))); } @@ -117,7 +120,7 @@ public abstract class AbstractJedisTest { equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET foo ?"), equalTo(DbIncubatingAttributes.DB_OPERATION, "SET"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port))), trace -> trace.hasSpansSatisfyingExactly( @@ -128,7 +131,7 @@ public abstract class AbstractJedisTest { equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "RANDOMKEY"), equalTo(DbIncubatingAttributes.DB_OPERATION, "RANDOMKEY"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port)))); } } diff --git a/instrumentation/jedis/jedis-3.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jedis/v3_0/Jedis30ClientTest.java b/instrumentation/jedis/jedis-3.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jedis/v3_0/Jedis30ClientTest.java index fe97e8e7a3..be3e155d06 100644 --- a/instrumentation/jedis/jedis-3.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jedis/v3_0/Jedis30ClientTest.java +++ b/instrumentation/jedis/jedis-3.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jedis/v3_0/Jedis30ClientTest.java @@ -15,6 +15,8 @@ import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension; import io.opentelemetry.semconv.NetworkAttributes; import io.opentelemetry.semconv.ServerAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; +import java.net.InetAddress; +import java.net.UnknownHostException; import org.assertj.core.api.AbstractLongAssert; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; @@ -31,15 +33,21 @@ class Jedis30ClientTest { static GenericContainer redisServer = new GenericContainer<>("redis:6.2.3-alpine").withExposedPorts(6379); + static String host; + + static String ip; + static int port; static Jedis jedis; @BeforeAll - static void setup() { + static void setup() throws UnknownHostException { redisServer.start(); + host = redisServer.getHost(); + ip = InetAddress.getByName(host).getHostAddress(); port = redisServer.getMappedPort(6379); - jedis = new Jedis("localhost", port); + jedis = new Jedis(host, port); } @AfterAll @@ -68,10 +76,10 @@ class Jedis30ClientTest { equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET foo ?"), equalTo(DbIncubatingAttributes.DB_OPERATION, "SET"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), satisfies( NetworkAttributes.NETWORK_PEER_PORT, AbstractLongAssert::isNotNegative)))); @@ -94,10 +102,10 @@ class Jedis30ClientTest { equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET foo ?"), equalTo(DbIncubatingAttributes.DB_OPERATION, "SET"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), satisfies( NetworkAttributes.NETWORK_PEER_PORT, AbstractLongAssert::isNotNegative))), @@ -110,10 +118,10 @@ class Jedis30ClientTest { equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "GET foo"), equalTo(DbIncubatingAttributes.DB_OPERATION, "GET"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), satisfies( NetworkAttributes.NETWORK_PEER_PORT, AbstractLongAssert::isNotNegative)))); @@ -136,10 +144,10 @@ class Jedis30ClientTest { equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET foo ?"), equalTo(DbIncubatingAttributes.DB_OPERATION, "SET"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), satisfies( NetworkAttributes.NETWORK_PEER_PORT, AbstractLongAssert::isNotNegative))), @@ -152,10 +160,10 @@ class Jedis30ClientTest { equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "RANDOMKEY"), equalTo(DbIncubatingAttributes.DB_OPERATION, "RANDOMKEY"), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), satisfies( NetworkAttributes.NETWORK_PEER_PORT, AbstractLongAssert::isNotNegative)))); diff --git a/instrumentation/jedis/jedis-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jedis/v4_0/Jedis40ClientTest.java b/instrumentation/jedis/jedis-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jedis/v4_0/Jedis40ClientTest.java index 04b44e38a0..0d54274d9a 100644 --- a/instrumentation/jedis/jedis-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jedis/v4_0/Jedis40ClientTest.java +++ b/instrumentation/jedis/jedis-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jedis/v4_0/Jedis40ClientTest.java @@ -13,6 +13,8 @@ import io.opentelemetry.instrumentation.testing.junit.AgentInstrumentationExtens import io.opentelemetry.instrumentation.testing.junit.InstrumentationExtension; import io.opentelemetry.semconv.NetworkAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; +import java.net.InetAddress; +import java.net.UnknownHostException; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; @@ -28,15 +30,18 @@ class Jedis40ClientTest { static GenericContainer redisServer = new GenericContainer<>("redis:6.2.3-alpine").withExposedPorts(6379); + static String ip; + static int port; static Jedis jedis; @BeforeAll - static void setup() { + static void setup() throws UnknownHostException { redisServer.start(); port = redisServer.getMappedPort(6379); - jedis = new Jedis("localhost", port); + ip = InetAddress.getByName(redisServer.getHost()).getHostAddress(); + jedis = new Jedis(redisServer.getHost(), port); } @AfterAll @@ -67,7 +72,7 @@ class Jedis40ClientTest { equalTo(DbIncubatingAttributes.DB_OPERATION, "SET"), equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1")))); + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip)))); } @Test @@ -89,7 +94,7 @@ class Jedis40ClientTest { equalTo(DbIncubatingAttributes.DB_OPERATION, "SET"), equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"))), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip))), trace -> trace.hasSpansSatisfyingExactly( span -> @@ -101,7 +106,7 @@ class Jedis40ClientTest { equalTo(DbIncubatingAttributes.DB_OPERATION, "GET"), equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1")))); + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip)))); } @Test @@ -123,7 +128,7 @@ class Jedis40ClientTest { equalTo(DbIncubatingAttributes.DB_OPERATION, "SET"), equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"))), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip))), trace -> trace.hasSpansSatisfyingExactly( span -> @@ -135,6 +140,6 @@ class Jedis40ClientTest { equalTo(DbIncubatingAttributes.DB_OPERATION, "RANDOMKEY"), equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1")))); + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip)))); } } diff --git a/instrumentation/jms/jms-1.1/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jms/v1_1/AbstractJms1Test.java b/instrumentation/jms/jms-1.1/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jms/v1_1/AbstractJms1Test.java index 3b1adcb499..76aba2ac04 100644 --- a/instrumentation/jms/jms-1.1/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jms/v1_1/AbstractJms1Test.java +++ b/instrumentation/jms/jms-1.1/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jms/v1_1/AbstractJms1Test.java @@ -68,7 +68,8 @@ abstract class AbstractJms1Test { broker.start(); connectionFactory = - new ActiveMQConnectionFactory("tcp://localhost:" + broker.getMappedPort(61616)); + new ActiveMQConnectionFactory( + "tcp://" + broker.getHost() + ":" + broker.getMappedPort(61616)); Connection connection = connectionFactory.createConnection(); connection.start(); session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); diff --git a/instrumentation/jms/jms-3.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jms/v3_0/AbstractJms3Test.java b/instrumentation/jms/jms-3.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jms/v3_0/AbstractJms3Test.java index 1efc43318d..0e90b1164c 100644 --- a/instrumentation/jms/jms-3.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jms/v3_0/AbstractJms3Test.java +++ b/instrumentation/jms/jms-3.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/jms/v3_0/AbstractJms3Test.java @@ -75,7 +75,8 @@ abstract class AbstractJms3Test { broker.start(); connectionFactory = - new ActiveMQConnectionFactory("tcp://localhost:" + broker.getMappedPort(61616)); + new ActiveMQConnectionFactory( + "tcp://" + broker.getHost() + ":" + broker.getMappedPort(61616)); connectionFactory.setUser("test"); connectionFactory.setPassword("test"); diff --git a/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/AbstractLettuceClientTest.java b/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/AbstractLettuceClientTest.java index 255833f38e..18a58f8758 100644 --- a/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/AbstractLettuceClientTest.java +++ b/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/AbstractLettuceClientTest.java @@ -46,7 +46,10 @@ abstract class AbstractLettuceClientTest { protected static StatefulRedisConnection connection; + protected static String ip; + protected static String host; + protected static int port; protected static String embeddedDbUri; diff --git a/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/LettuceAsyncClientTest.java b/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/LettuceAsyncClientTest.java index c932c8a989..408f2ba72d 100644 --- a/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/LettuceAsyncClientTest.java +++ b/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/LettuceAsyncClientTest.java @@ -30,6 +30,8 @@ import io.opentelemetry.instrumentation.test.utils.PortUtils; import io.opentelemetry.sdk.trace.data.StatusData; import io.opentelemetry.semconv.ServerAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.util.Map; import java.util.concurrent.CancellationException; import java.util.concurrent.CompletableFuture; @@ -58,9 +60,11 @@ class LettuceAsyncClientTest extends AbstractLettuceClientTest { private static RedisAsyncCommands asyncCommands; @BeforeAll - static void setUp() { + static void setUp() throws UnknownHostException { redisServer.start(); + host = redisServer.getHost(); + ip = InetAddress.getByName(host).getHostAddress(); port = redisServer.getMappedPort(6379); embeddedDbUri = "redis://" + host + ":" + port + "/" + DB_INDEX; @@ -154,7 +158,11 @@ class LettuceAsyncClientTest extends AbstractLettuceClientTest { "io.netty.channel.AbstractChannel.AnnotatedConnectException"), equalTo( AttributeKey.stringKey("exception.message"), - "Connection refused: localhost/127.0.0.1:" + "Connection refused: " + + host + + "/" + + ip + + ":" + incorrectPort), satisfies( AttributeKey.stringKey("exception.stacktrace"), diff --git a/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/LettuceReactiveClientTest.java b/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/LettuceReactiveClientTest.java index aa9332419b..feb5f7ead4 100644 --- a/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/LettuceReactiveClientTest.java +++ b/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/LettuceReactiveClientTest.java @@ -17,6 +17,8 @@ import io.opentelemetry.api.common.AttributeKey; import io.opentelemetry.api.common.Attributes; import io.opentelemetry.api.trace.SpanKind; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; @@ -32,10 +34,11 @@ class LettuceReactiveClientTest extends AbstractLettuceClientTest { private static RedisReactiveCommands reactiveCommands; @BeforeAll - static void setUp() { + static void setUp() throws UnknownHostException { redisServer.start(); host = redisServer.getHost(); + ip = InetAddress.getByName(host).getHostAddress(); port = redisServer.getMappedPort(6379); embeddedDbUri = "redis://" + host + ":" + port + "/" + DB_INDEX; diff --git a/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/LettuceSyncClientTest.java b/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/LettuceSyncClientTest.java index 1701ea5be5..7828a3c5ef 100644 --- a/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/LettuceSyncClientTest.java +++ b/instrumentation/lettuce/lettuce-5.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_0/LettuceSyncClientTest.java @@ -21,6 +21,8 @@ import io.opentelemetry.instrumentation.test.utils.PortUtils; import io.opentelemetry.sdk.trace.data.StatusData; import io.opentelemetry.semconv.ServerAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.util.Map; import org.assertj.core.api.AbstractAssert; import org.junit.jupiter.api.AfterAll; @@ -40,9 +42,10 @@ class LettuceSyncClientTest extends AbstractLettuceClientTest { private static RedisCommands syncCommands; @BeforeAll - static void setUp() { + static void setUp() throws UnknownHostException { redisServer.start(); host = redisServer.getHost(); + ip = InetAddress.getByName(host).getHostAddress(); port = redisServer.getMappedPort(6379); embeddedDbUri = "redis://" + host + ":" + port + "/" + DB_INDEX; @@ -121,7 +124,11 @@ class LettuceSyncClientTest extends AbstractLettuceClientTest { "io.netty.channel.AbstractChannel.AnnotatedConnectException"), equalTo( AttributeKey.stringKey("exception.message"), - "Connection refused: localhost/127.0.0.1:" + "Connection refused: " + + host + + "/" + + ip + + ":" + incorrectPort), satisfies( AttributeKey.stringKey("exception.stacktrace"), diff --git a/instrumentation/lettuce/lettuce-5.1/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_1/LettuceReactiveClientTest.java b/instrumentation/lettuce/lettuce-5.1/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_1/LettuceReactiveClientTest.java index 03cf863a8b..2121d25005 100644 --- a/instrumentation/lettuce/lettuce-5.1/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_1/LettuceReactiveClientTest.java +++ b/instrumentation/lettuce/lettuce-5.1/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/lettuce/v5_1/LettuceReactiveClientTest.java @@ -53,9 +53,9 @@ class LettuceReactiveClientTest extends AbstractLettuceReactiveClientTest { .hasParent(trace.getSpan(0)) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET a ?")) @@ -68,9 +68,9 @@ class LettuceReactiveClientTest extends AbstractLettuceReactiveClientTest { .hasParent(trace.getSpan(0)) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "GET a")) diff --git a/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceAsyncClientTest.java b/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceAsyncClientTest.java index f75945f895..7aecb49b89 100644 --- a/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceAsyncClientTest.java +++ b/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceAsyncClientTest.java @@ -24,6 +24,8 @@ import io.opentelemetry.sdk.testing.assertj.SpanDataAssert; import io.opentelemetry.semconv.NetworkAttributes; import io.opentelemetry.semconv.ServerAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -53,9 +55,10 @@ public abstract class AbstractLettuceAsyncClientTest extends AbstractLettuceClie private static RedisAsyncCommands asyncCommands; @BeforeAll - void setUp() { + void setUp() throws UnknownHostException { redisServer.start(); host = redisServer.getHost(); + ip = InetAddress.getByName(host).getHostAddress(); port = redisServer.getMappedPort(6379); embeddedDbUri = "redis://" + host + ":" + port + "/" + DB_INDEX; @@ -144,9 +147,9 @@ public abstract class AbstractLettuceAsyncClientTest extends AbstractLettuceClie .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET TESTSETKEY ?")) @@ -190,9 +193,9 @@ public abstract class AbstractLettuceAsyncClientTest extends AbstractLettuceClie .hasParent(trace.getSpan(0)) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "GET TESTKEY")) @@ -268,9 +271,9 @@ public abstract class AbstractLettuceAsyncClientTest extends AbstractLettuceClie .hasParent(trace.getSpan(0)) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo( @@ -335,9 +338,9 @@ public abstract class AbstractLettuceAsyncClientTest extends AbstractLettuceClie .hasParent(trace.getSpan(0)) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "RANDOMKEY")) @@ -394,9 +397,9 @@ public abstract class AbstractLettuceAsyncClientTest extends AbstractLettuceClie .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo( @@ -412,9 +415,9 @@ public abstract class AbstractLettuceAsyncClientTest extends AbstractLettuceClie .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "HGETALL TESTHM")) diff --git a/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceClientTest.java b/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceClientTest.java index 38539070b6..2cd18303d9 100644 --- a/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceClientTest.java +++ b/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceClientTest.java @@ -46,7 +46,11 @@ abstract class AbstractLettuceClientTest { protected abstract RedisClient createClient(String uri); protected static String host; + + protected static String ip; + protected static int port; + protected static String embeddedDbUri; protected ContainerConnection newContainerConnection() { diff --git a/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceReactiveClientTest.java b/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceReactiveClientTest.java index 3da789e821..a2e1579529 100644 --- a/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceReactiveClientTest.java +++ b/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceReactiveClientTest.java @@ -15,6 +15,8 @@ import io.opentelemetry.api.trace.SpanKind; import io.opentelemetry.semconv.NetworkAttributes; import io.opentelemetry.semconv.ServerAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.util.Objects; import java.util.concurrent.CompletableFuture; import java.util.concurrent.TimeUnit; @@ -31,10 +33,11 @@ public abstract class AbstractLettuceReactiveClientTest extends AbstractLettuceC protected static RedisReactiveCommands reactiveCommands; @BeforeAll - void setUp() { + void setUp() throws UnknownHostException { redisServer.start(); host = redisServer.getHost(); + ip = InetAddress.getByName(host).getHostAddress(); port = redisServer.getMappedPort(6379); embeddedDbUri = "redis://" + host + ":" + port + "/" + DB_INDEX; expectedHostAttributeValue = Objects.equals(host, "127.0.0.1") ? null : host; @@ -91,9 +94,9 @@ public abstract class AbstractLettuceReactiveClientTest extends AbstractLettuceC .hasParent(trace.getSpan(0)) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET TESTSETKEY ?")) @@ -129,9 +132,9 @@ public abstract class AbstractLettuceReactiveClientTest extends AbstractLettuceC .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "GET TESTKEY")) @@ -178,9 +181,9 @@ public abstract class AbstractLettuceReactiveClientTest extends AbstractLettuceC .hasParent(trace.getSpan(0)) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo( @@ -216,9 +219,9 @@ public abstract class AbstractLettuceReactiveClientTest extends AbstractLettuceC .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "RANDOMKEY")) @@ -240,9 +243,9 @@ public abstract class AbstractLettuceReactiveClientTest extends AbstractLettuceC .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "COMMAND")) @@ -285,9 +288,9 @@ public abstract class AbstractLettuceReactiveClientTest extends AbstractLettuceC .hasParent(trace.getSpan(0)) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET a ?")) @@ -300,9 +303,9 @@ public abstract class AbstractLettuceReactiveClientTest extends AbstractLettuceC .hasParent(trace.getSpan(0)) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "GET a")) @@ -329,9 +332,9 @@ public abstract class AbstractLettuceReactiveClientTest extends AbstractLettuceC .hasParent(trace.getSpan(0)) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET a ?")) @@ -344,9 +347,9 @@ public abstract class AbstractLettuceReactiveClientTest extends AbstractLettuceC .hasParent(trace.getSpan(0)) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "GET a")) diff --git a/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceSyncClientAuthTest.java b/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceSyncClientAuthTest.java index bb7a793153..a067003b9a 100644 --- a/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceSyncClientAuthTest.java +++ b/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceSyncClientAuthTest.java @@ -13,6 +13,8 @@ import io.opentelemetry.api.trace.SpanKind; import io.opentelemetry.semconv.NetworkAttributes; import io.opentelemetry.semconv.ServerAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; +import java.net.InetAddress; +import java.net.UnknownHostException; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; @@ -20,11 +22,12 @@ import org.junit.jupiter.api.Test; public abstract class AbstractLettuceSyncClientAuthTest extends AbstractLettuceClientTest { @BeforeAll - void setUp() { + void setUp() throws UnknownHostException { redisServer = redisServer.withCommand("redis-server", "--requirepass password"); redisServer.start(); host = redisServer.getHost(); + ip = InetAddress.getByName(host).getHostAddress(); port = redisServer.getMappedPort(6379); embeddedDbUri = "redis://" + host + ":" + port + "/" + DB_INDEX; @@ -65,9 +68,9 @@ public abstract class AbstractLettuceSyncClientAuthTest extends AbstractLettuceC .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "AUTH ?")) diff --git a/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceSyncClientTest.java b/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceSyncClientTest.java index c9ba90f9c5..b9e53ffb83 100644 --- a/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceSyncClientTest.java +++ b/instrumentation/lettuce/lettuce-5.1/testing/src/main/java/io/opentelemetry/instrumentation/lettuce/v5_1/AbstractLettuceSyncClientTest.java @@ -23,6 +23,8 @@ import io.opentelemetry.instrumentation.test.utils.PortUtils; import io.opentelemetry.semconv.NetworkAttributes; import io.opentelemetry.semconv.ServerAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.util.Base64; import java.util.Map; import org.junit.jupiter.api.AfterAll; @@ -32,7 +34,6 @@ import org.junit.jupiter.api.Test; public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClientTest { private static String dbUriNonExistent; - private static String embeddedDbLocalhostUri; private static final ImmutableMap testHashMap = ImmutableMap.of( @@ -43,13 +44,13 @@ public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClien private static RedisCommands syncCommands; @BeforeAll - void setUp() { + void setUp() throws UnknownHostException { redisServer.start(); host = redisServer.getHost(); + ip = InetAddress.getByName(host).getHostAddress(); port = redisServer.getMappedPort(6379); embeddedDbUri = "redis://" + host + ":" + port + "/" + DB_INDEX; - embeddedDbLocalhostUri = "redis://localhost:" + port + "/" + DB_INDEX; int incorrectPort = PortUtils.findOpenPort(); dbUriNonExistent = "redis://" + host + ":" + incorrectPort + "/" + DB_INDEX; @@ -112,41 +113,9 @@ public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClien .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), - equalTo(ServerAttributes.SERVER_PORT, port), - equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), - equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET TESTSETKEY ?")) - .hasEventsSatisfyingExactly( - event -> event.hasName("redis.encode.start"), - event -> event.hasName("redis.encode.end")))); - } - - @Test - void testSetCommandLocalhost() { - RedisClient testConnectionClient = createClient(embeddedDbLocalhostUri); - testConnectionClient.setOptions(LettuceTestUtil.CLIENT_OPTIONS); - cleanup.deferCleanup(testConnectionClient::shutdown); - - StatefulRedisConnection testConnection = testConnectionClient.connect(); - cleanup.deferCleanup(testConnection); - - String res = testConnection.sync().set("TESTSETKEY", "TESTSETVAL"); - assertThat(res).isEqualTo("OK"); - - getInstrumentationExtension() - .waitAndAssertTraces( - trace -> - trace.hasSpansSatisfyingExactly( - span -> - span.hasName("SET") - .hasKind(SpanKind.CLIENT) - .hasAttributesSatisfyingExactly( - equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), - equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET TESTSETKEY ?")) @@ -169,9 +138,9 @@ public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClien .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "GET TESTKEY")) @@ -194,9 +163,9 @@ public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClien .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo( @@ -220,9 +189,9 @@ public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClien .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "RANDOMKEY")) @@ -249,10 +218,10 @@ public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClien .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo( NetworkAttributes.NETWORK_PEER_PORT, containerConnection.port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, containerConnection.port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "LPUSH TESTLIST ?")) @@ -275,9 +244,9 @@ public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClien .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo( @@ -302,9 +271,9 @@ public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClien .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "HGETALL TESTHM")) @@ -334,9 +303,9 @@ public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClien .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo( @@ -362,9 +331,9 @@ public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClien .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "MSET key1 ? key2 ?")) @@ -391,10 +360,10 @@ public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClien .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo( NetworkAttributes.NETWORK_PEER_PORT, containerConnection.port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, containerConnection.port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "DEBUG SEGFAULT"))); @@ -405,10 +374,10 @@ public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClien .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo( NetworkAttributes.NETWORK_PEER_PORT, containerConnection.port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, containerConnection.port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "DEBUG SEGFAULT")) @@ -440,10 +409,10 @@ public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClien .hasException(new RedisException("Connection disconnected")) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo( NetworkAttributes.NETWORK_PEER_PORT, containerConnection.port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, containerConnection.port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SHUTDOWN NOSAVE"))); @@ -455,10 +424,10 @@ public abstract class AbstractLettuceSyncClientTest extends AbstractLettuceClien .hasAttributesSatisfyingExactly( equalTo(AttributeKey.stringKey("error"), "Connection disconnected"), equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo( NetworkAttributes.NETWORK_PEER_PORT, containerConnection.port), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, containerConnection.port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SHUTDOWN NOSAVE")) diff --git a/instrumentation/mongo/mongo-3.1/testing/src/main/groovy/io/opentelemetry/instrumentation/mongo/v3_1/AbstractMongo31ClientTest.groovy b/instrumentation/mongo/mongo-3.1/testing/src/main/groovy/io/opentelemetry/instrumentation/mongo/v3_1/AbstractMongo31ClientTest.groovy index a994f34b37..63d74fc903 100644 --- a/instrumentation/mongo/mongo-3.1/testing/src/main/groovy/io/opentelemetry/instrumentation/mongo/v3_1/AbstractMongo31ClientTest.groovy +++ b/instrumentation/mongo/mongo-3.1/testing/src/main/groovy/io/opentelemetry/instrumentation/mongo/v3_1/AbstractMongo31ClientTest.groovy @@ -29,7 +29,7 @@ abstract class AbstractMongo31ClientTest extends AbstractMongoClientTest> client = MongoClients.create(MongoClientSettings.builder() .applyToClusterSettings({ builder -> builder.hosts(Arrays.asList( - new ServerAddress("localhost", port))) + new ServerAddress(host, port))) .description("some-description") }) .build()) @@ -47,7 +47,7 @@ class MongoClientTest extends AbstractMongoClientTest> @Override void createCollectionNoDescription(String dbName, String collectionName) { - MongoDatabase db = MongoClients.create("mongodb://localhost:${port}").getDatabase(dbName) + MongoDatabase db = MongoClients.create("mongodb://$host:${port}").getDatabase(dbName) db.createCollection(collectionName) } @@ -56,7 +56,7 @@ class MongoClientTest extends AbstractMongoClientTest> def clientSettings = MongoClientSettings.builder() .applyToClusterSettings({ builder -> builder.hosts(Arrays.asList( - new ServerAddress("localhost", port))) + new ServerAddress(host, port))) .description("some-description") }) .build() @@ -70,7 +70,7 @@ class MongoClientTest extends AbstractMongoClientTest> def clientSettings = MongoClientSettings.builder() .applyToClusterSettings({ builder -> builder.hosts(Arrays.asList( - new ServerAddress("localhost", port))) + new ServerAddress(host, port))) .description("some-description") }) clientSettings.build() @@ -174,7 +174,7 @@ class MongoClientTest extends AbstractMongoClientTest> def "test client failure"() { setup: - def client = MongoClients.create("mongodb://localhost:" + UNUSABLE_PORT + "/?connectTimeoutMS=10") + def client = MongoClients.create("mongodb://" + host + ":" + UNUSABLE_PORT + "/?connectTimeoutMS=10") when: MongoDatabase db = client.getDatabase(dbName) diff --git a/instrumentation/mongo/mongo-4.0/javaagent/src/test/groovy/Mongo4ReactiveClientTest.groovy b/instrumentation/mongo/mongo-4.0/javaagent/src/test/groovy/Mongo4ReactiveClientTest.groovy index 6b62b75412..c9afc1d5ca 100644 --- a/instrumentation/mongo/mongo-4.0/javaagent/src/test/groovy/Mongo4ReactiveClientTest.groovy +++ b/instrumentation/mongo/mongo-4.0/javaagent/src/test/groovy/Mongo4ReactiveClientTest.groovy @@ -33,7 +33,7 @@ class Mongo4ReactiveClientTest extends AbstractMongoClientTest cleanup = [] def setupSpec() throws Exception { - client = MongoClients.create("mongodb://localhost:$port") + client = MongoClients.create("mongodb://$host:$port") } def cleanupSpec() throws Exception { @@ -54,7 +54,7 @@ class Mongo4ReactiveClientTest extends AbstractMongoClientTest builder.hosts(Arrays.asList( - new ServerAddress("localhost", port))) + new ServerAddress(host, port))) }) settings.build() def tmpClient = MongoClients.create(settings.build()) diff --git a/instrumentation/mongo/mongo-4.0/javaagent/src/test/groovy/MongoClientTest.groovy b/instrumentation/mongo/mongo-4.0/javaagent/src/test/groovy/MongoClientTest.groovy index a206a6cf04..5daec24039 100644 --- a/instrumentation/mongo/mongo-4.0/javaagent/src/test/groovy/MongoClientTest.groovy +++ b/instrumentation/mongo/mongo-4.0/javaagent/src/test/groovy/MongoClientTest.groovy @@ -23,7 +23,7 @@ class MongoClientTest extends AbstractMongoClientTest> MongoClient client def setupSpec() throws Exception { - client = MongoClients.create("mongodb://localhost:$port") + client = MongoClients.create("mongodb://$host:$port") } def cleanupSpec() throws Exception { @@ -39,7 +39,7 @@ class MongoClientTest extends AbstractMongoClientTest> @Override void createCollectionNoDescription(String dbName, String collectionName) { - MongoDatabase db = MongoClients.create("mongodb://localhost:${port}").getDatabase(dbName) + MongoDatabase db = MongoClients.create("mongodb://$host:${port}").getDatabase(dbName) db.createCollection(collectionName) } @@ -53,7 +53,7 @@ class MongoClientTest extends AbstractMongoClientTest> def settings = MongoClientSettings.builder() .applyToClusterSettings({ builder -> builder.hosts(Arrays.asList( - new ServerAddress("localhost", port))) + new ServerAddress(host, port))) }) settings.build() MongoDatabase db = MongoClients.create(settings.build()).getDatabase(dbName) diff --git a/instrumentation/mongo/mongo-async-3.3/javaagent/src/test/groovy/MongoAsyncClientTest.groovy b/instrumentation/mongo/mongo-async-3.3/javaagent/src/test/groovy/MongoAsyncClientTest.groovy index fecdcf7715..dea675af2c 100644 --- a/instrumentation/mongo/mongo-async-3.3/javaagent/src/test/groovy/MongoAsyncClientTest.groovy +++ b/instrumentation/mongo/mongo-async-3.3/javaagent/src/test/groovy/MongoAsyncClientTest.groovy @@ -35,7 +35,7 @@ class MongoAsyncClientTest extends AbstractMongoClientTest extends InstrumentationSpecification { @Shared GenericContainer mongodb + @Shared + String host + @Shared int port @@ -33,7 +36,7 @@ abstract class AbstractMongoClientTest extends InstrumentationSpecification { .withExposedPorts(27017) .withLogConsumer(new Slf4jLogConsumer(LoggerFactory.getLogger("mongodb"))) mongodb.start() - + host = mongodb.getHost() port = mongodb.getMappedPort(27017) } @@ -77,7 +80,7 @@ abstract class AbstractMongoClientTest extends InstrumentationSpecification { def "test port open"() { when: - new Socket("localhost", port) + new Socket(host, port) then: noExceptionThrown() @@ -412,7 +415,7 @@ abstract class AbstractMongoClientTest extends InstrumentationSpecification { childOf((SpanData) parentSpan) } attributes { - "$ServerAttributes.SERVER_ADDRESS" "localhost" + "$ServerAttributes.SERVER_ADDRESS" host "$ServerAttributes.SERVER_PORT" port "$DbIncubatingAttributes.DB_STATEMENT" { statementEval.call(it.replaceAll(" ", "")) diff --git a/instrumentation/opensearch/opensearch-rest-1.0/javaagent/src/test/java/OpenSearchRestTest.java b/instrumentation/opensearch/opensearch-rest-1.0/javaagent/src/test/java/OpenSearchRestTest.java index 6806c43a81..cb51f8efb0 100644 --- a/instrumentation/opensearch/opensearch-rest-1.0/javaagent/src/test/java/OpenSearchRestTest.java +++ b/instrumentation/opensearch/opensearch-rest-1.0/javaagent/src/test/java/OpenSearchRestTest.java @@ -23,6 +23,7 @@ import org.apache.http.HttpHost; import org.apache.http.auth.AuthScope; import org.apache.http.auth.UsernamePasswordCredentials; import org.apache.http.client.CredentialsProvider; +import org.apache.http.conn.ssl.NoopHostnameVerifier; import org.apache.http.conn.ssl.TrustAllStrategy; import org.apache.http.impl.client.BasicCredentialsProvider; import org.apache.http.ssl.SSLContextBuilder; @@ -72,6 +73,9 @@ public class OpenSearchRestTest { httpClientBuilder -> httpClientBuilder .setSSLContext(sslContext) + // Required for non-localhost Docker runtimes, the SSL cert in the + // OpenSearch image is registered to "localhost" + .setSSLHostnameVerifier(new NoopHostnameVerifier()) .setDefaultCredentialsProvider(credentialsProvider)) .build(); } diff --git a/instrumentation/r2dbc-1.0/testing/src/main/java/io/opentelemetry/instrumentation/r2dbc/v1_0/AbstractR2dbcStatementTest.java b/instrumentation/r2dbc-1.0/testing/src/main/java/io/opentelemetry/instrumentation/r2dbc/v1_0/AbstractR2dbcStatementTest.java index 6cc1416f93..cb320d1351 100644 --- a/instrumentation/r2dbc-1.0/testing/src/main/java/io/opentelemetry/instrumentation/r2dbc/v1_0/AbstractR2dbcStatementTest.java +++ b/instrumentation/r2dbc-1.0/testing/src/main/java/io/opentelemetry/instrumentation/r2dbc/v1_0/AbstractR2dbcStatementTest.java @@ -132,7 +132,7 @@ public abstract class AbstractR2dbcStatementTest { createProxyConnectionFactory( ConnectionFactoryOptions.builder() .option(DRIVER, props.system) - .option(HOST, "localhost") + .option(HOST, container.getHost()) .option(PORT, port) .option(USER, USER_DB) .option(PASSWORD, PW_DB) @@ -170,7 +170,7 @@ public abstract class AbstractR2dbcStatementTest { equalTo(DB_STATEMENT, parameter.expectedStatement), equalTo(DB_OPERATION, parameter.operation), equalTo(DB_SQL_TABLE, parameter.table), - equalTo(SERVER_ADDRESS, "localhost"), + equalTo(SERVER_ADDRESS, container.getHost()), equalTo(SERVER_PORT, port)), span -> span.hasName("child") diff --git a/instrumentation/rabbitmq-2.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/AbstractRabbitMqTest.java b/instrumentation/rabbitmq-2.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/AbstractRabbitMqTest.java index 13449a0f8a..e25af11e1f 100644 --- a/instrumentation/rabbitmq-2.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/AbstractRabbitMqTest.java +++ b/instrumentation/rabbitmq-2.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/AbstractRabbitMqTest.java @@ -6,6 +6,8 @@ package io.opentelemetry.javaagent.instrumentation.rabbitmq; import com.rabbitmq.client.ConnectionFactory; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.time.Duration; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; @@ -22,8 +24,14 @@ public abstract class AbstractRabbitMqTest { private static GenericContainer rabbitMqContainer; protected static ConnectionFactory connectionFactory; + protected static String rabbitMqHost; + + protected static String rabbitMqIp; + + protected static int rabbitMqPort; + @BeforeAll - static void startRabbit() { + static void startRabbit() throws UnknownHostException { rabbitMqContainer = new GenericContainer<>("rabbitmq:latest") .withExposedPorts(5672) @@ -36,6 +44,10 @@ public abstract class AbstractRabbitMqTest { connectionFactory.setHost(rabbitMqContainer.getHost()); connectionFactory.setPort(rabbitMqContainer.getMappedPort(5672)); connectionFactory.setAutomaticRecoveryEnabled(false); + + rabbitMqHost = rabbitMqContainer.getHost(); + rabbitMqIp = InetAddress.getByName(rabbitMqContainer.getHost()).getHostAddress(); + rabbitMqPort = rabbitMqContainer.getMappedPort(5672); } @AfterAll diff --git a/instrumentation/rabbitmq-2.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/RabbitMqTest.java b/instrumentation/rabbitmq-2.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/RabbitMqTest.java index 957a641bb5..8347f81df4 100644 --- a/instrumentation/rabbitmq-2.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/RabbitMqTest.java +++ b/instrumentation/rabbitmq-2.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/RabbitMqTest.java @@ -870,10 +870,7 @@ class RabbitMqTest extends AbstractRabbitMqTest { .satisfies( attrs -> { String peerAddr = attrs.get(NetworkAttributes.NETWORK_PEER_ADDRESS); - assertTrue( - "127.0.0.1".equals(peerAddr) - || "0:0:0:0:0:0:0:1".equals(peerAddr) - || peerAddr == null); + assertThat(peerAddr).isIn(rabbitMqIp, null); String networkType = attrs.get(NetworkAttributes.NETWORK_TYPE); assertThat(networkType).isIn("ipv4", "ipv6", null); diff --git a/instrumentation/rabbitmq-2.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/ReactorRabbitMqTest.java b/instrumentation/rabbitmq-2.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/ReactorRabbitMqTest.java index d122a9a827..cf52b5e3a8 100644 --- a/instrumentation/rabbitmq-2.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/ReactorRabbitMqTest.java +++ b/instrumentation/rabbitmq-2.7/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/rabbitmq/ReactorRabbitMqTest.java @@ -52,8 +52,7 @@ class ReactorRabbitMqTest extends AbstractRabbitMqTest { attrs -> { String peerAddr = attrs.get(NetworkAttributes.NETWORK_PEER_ADDRESS); - assertThat(peerAddr) - .isIn("127.0.0.1", "0:0:0:0:0:0:0:1", null); + assertThat(peerAddr).isIn(rabbitMqIp, null); String networkType = attrs.get(NetworkAttributes.NETWORK_TYPE); diff --git a/instrumentation/rediscala-1.8/javaagent/src/test/groovy/RediscalaClientTest.groovy b/instrumentation/rediscala-1.8/javaagent/src/test/groovy/RediscalaClientTest.groovy index 694a60b62f..5f6e10ab0a 100644 --- a/instrumentation/rediscala-1.8/javaagent/src/test/groovy/RediscalaClientTest.groovy +++ b/instrumentation/rediscala-1.8/javaagent/src/test/groovy/RediscalaClientTest.groovy @@ -32,6 +32,7 @@ class RediscalaClientTest extends AgentInstrumentationSpecification { def setupSpec() { redisServer.start() + String host = redisServer.getHost() port = redisServer.getMappedPort(6379) // latest has separate artifacts for akka an pekko, currently latestDepTestLibrary picks the // pekko one @@ -44,7 +45,7 @@ class RediscalaClientTest extends AgentInstrumentationSpecification { } // latest RedisClient constructor takes username as argument if (RedisClient.metaClass.getMetaMethod("username") != null) { - redisClient = new RedisClient("localhost", + redisClient = new RedisClient(host, port, Option.apply(null), Option.apply(null), @@ -54,7 +55,7 @@ class RediscalaClientTest extends AgentInstrumentationSpecification { system, new RedisDispatcher("rediscala.rediscala-client-worker-dispatcher")) } else { - redisClient = new RedisClient("localhost", + redisClient = new RedisClient(host, port, Option.apply(null), Option.apply(null), diff --git a/instrumentation/redisson/redisson-common/testing/src/main/java/io/opentelemetry/javaagent/instrumentation/redisson/AbstractRedissonAsyncClientTest.java b/instrumentation/redisson/redisson-common/testing/src/main/java/io/opentelemetry/javaagent/instrumentation/redisson/AbstractRedissonAsyncClientTest.java index 13e0a35c2a..9a005c9031 100644 --- a/instrumentation/redisson/redisson-common/testing/src/main/java/io/opentelemetry/javaagent/instrumentation/redisson/AbstractRedissonAsyncClientTest.java +++ b/instrumentation/redisson/redisson-common/testing/src/main/java/io/opentelemetry/javaagent/instrumentation/redisson/AbstractRedissonAsyncClientTest.java @@ -20,6 +20,8 @@ import io.opentelemetry.semconv.NetworkAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; import java.io.Serializable; import java.lang.reflect.InvocationTargetException; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.util.concurrent.Callable; import java.util.concurrent.CompletionStage; import java.util.concurrent.ExecutionException; @@ -54,16 +56,19 @@ public abstract class AbstractRedissonAsyncClientTest { private static final GenericContainer redisServer = new GenericContainer<>("redis:6.2.3-alpine").withExposedPorts(6379); + private static String ip; + private static int port; private static String address; private static RedissonClient redisson; @BeforeAll - static void setupAll() { + static void setupAll() throws UnknownHostException { redisServer.start(); + ip = InetAddress.getByName(redisServer.getHost()).getHostAddress(); port = redisServer.getMappedPort(6379); - address = "localhost:" + port; + address = redisServer.getHost() + ":" + port; } @AfterAll @@ -110,7 +115,7 @@ public abstract class AbstractRedissonAsyncClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET foo ?"), @@ -143,7 +148,7 @@ public abstract class AbstractRedissonAsyncClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SADD set1 ?"), @@ -217,7 +222,7 @@ public abstract class AbstractRedissonAsyncClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "MULTI;SET batch1 ?")) @@ -227,7 +232,7 @@ public abstract class AbstractRedissonAsyncClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET batch2 ?"), @@ -238,7 +243,7 @@ public abstract class AbstractRedissonAsyncClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "EXEC"), diff --git a/instrumentation/redisson/redisson-common/testing/src/main/java/io/opentelemetry/javaagent/instrumentation/redisson/AbstractRedissonClientTest.java b/instrumentation/redisson/redisson-common/testing/src/main/java/io/opentelemetry/javaagent/instrumentation/redisson/AbstractRedissonClientTest.java index a7a7af8199..d25aa7e4fc 100644 --- a/instrumentation/redisson/redisson-common/testing/src/main/java/io/opentelemetry/javaagent/instrumentation/redisson/AbstractRedissonClientTest.java +++ b/instrumentation/redisson/redisson-common/testing/src/main/java/io/opentelemetry/javaagent/instrumentation/redisson/AbstractRedissonClientTest.java @@ -20,6 +20,8 @@ import io.opentelemetry.sdk.testing.assertj.TraceAssert; import io.opentelemetry.semconv.NetworkAttributes; import io.opentelemetry.semconv.incubating.DbIncubatingAttributes; import java.lang.reflect.InvocationTargetException; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -60,15 +62,18 @@ public abstract class AbstractRedissonClientTest { private static final GenericContainer redisServer = new GenericContainer<>("redis:6.2.3-alpine").withExposedPorts(6379); + private static String ip; + private static int port; private static String address; private RedissonClient redisson; @BeforeAll - static void setupAll() { + static void setupAll() throws UnknownHostException { redisServer.start(); + ip = InetAddress.getByName(redisServer.getHost()).getHostAddress(); port = redisServer.getMappedPort(6379); - address = "localhost:" + port; + address = redisServer.getHost() + ":" + port; } @AfterAll @@ -113,7 +118,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET foo ?"), @@ -125,7 +130,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "GET foo"), @@ -151,7 +156,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo( @@ -193,7 +198,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "MULTI;SET batch1 ?")) @@ -203,7 +208,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SET batch2 ?"), @@ -214,7 +219,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "EXEC"), @@ -236,7 +241,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "RPUSH list1 ?"), @@ -261,7 +266,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo( @@ -275,7 +280,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "HGET map1 key1"), @@ -296,7 +301,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "SADD set1 ?"), @@ -324,7 +329,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo( @@ -351,7 +356,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_STATEMENT, "INCR AtomicLong"), @@ -377,7 +382,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_OPERATION, "EVAL"), @@ -392,7 +397,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_OPERATION, "EVAL"), @@ -408,7 +413,7 @@ public abstract class AbstractRedissonClientTest { .hasKind(CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), equalTo(NetworkAttributes.NETWORK_PEER_PORT, (long) port), equalTo(DbIncubatingAttributes.DB_SYSTEM, "redis"), equalTo(DbIncubatingAttributes.DB_OPERATION, "DEL"), diff --git a/instrumentation/rocketmq/rocketmq-client/rocketmq-client-5.0/testing/src/main/java/io/opentelemetry/instrumentation/rocketmqclient/v5_0/AbstractRocketMqClientTest.java b/instrumentation/rocketmq/rocketmq-client/rocketmq-client-5.0/testing/src/main/java/io/opentelemetry/instrumentation/rocketmqclient/v5_0/AbstractRocketMqClientTest.java index ee30c51194..beab651f2a 100644 --- a/instrumentation/rocketmq/rocketmq-client/rocketmq-client-5.0/testing/src/main/java/io/opentelemetry/instrumentation/rocketmqclient/v5_0/AbstractRocketMqClientTest.java +++ b/instrumentation/rocketmq/rocketmq-client/rocketmq-client-5.0/testing/src/main/java/io/opentelemetry/instrumentation/rocketmqclient/v5_0/AbstractRocketMqClientTest.java @@ -67,6 +67,7 @@ public abstract class AbstractRocketMqClientTest { private static final String consumerGroup = "group-0"; private static final RocketMqProxyContainer container = new RocketMqProxyContainer(); + private final ClientServiceProvider provider = ClientServiceProvider.loadService(); private PushConsumer consumer; private Producer producer; diff --git a/instrumentation/rocketmq/rocketmq-client/rocketmq-client-5.0/testing/src/main/java/io/opentelemetry/instrumentation/rocketmqclient/v5_0/RocketMqProxyContainer.java b/instrumentation/rocketmq/rocketmq-client/rocketmq-client-5.0/testing/src/main/java/io/opentelemetry/instrumentation/rocketmqclient/v5_0/RocketMqProxyContainer.java index 5abe16b5b6..ae80c3967b 100644 --- a/instrumentation/rocketmq/rocketmq-client/rocketmq-client-5.0/testing/src/main/java/io/opentelemetry/instrumentation/rocketmqclient/v5_0/RocketMqProxyContainer.java +++ b/instrumentation/rocketmq/rocketmq-client/rocketmq-client-5.0/testing/src/main/java/io/opentelemetry/instrumentation/rocketmqclient/v5_0/RocketMqProxyContainer.java @@ -9,6 +9,8 @@ import io.opentelemetry.instrumentation.test.utils.PortUtils; import org.testcontainers.containers.FixedHostPortGenericContainer; import org.testcontainers.containers.GenericContainer; +// TODO - Tests using this container will currently fail if TESTCONTAINERS_HOST_OVERRIDE is set to +// anything other than "localhost". public class RocketMqProxyContainer { // TODO(aaron-ai): replace it by the official image. private static final String IMAGE_NAME = "aaronai/rocketmq-proxy-it:v1.0.1"; diff --git a/instrumentation/spring/spring-jms/spring-jms-6.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/spring/jms/v6_0/AbstractSpringJmsListenerTest.java b/instrumentation/spring/spring-jms/spring-jms-6.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/spring/jms/v6_0/AbstractSpringJmsListenerTest.java index 550dffa86b..e7a713d1aa 100644 --- a/instrumentation/spring/spring-jms/spring-jms-6.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/spring/jms/v6_0/AbstractSpringJmsListenerTest.java +++ b/instrumentation/spring/spring-jms/spring-jms-6.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/spring/jms/v6_0/AbstractSpringJmsListenerTest.java @@ -99,7 +99,7 @@ abstract class AbstractSpringJmsListenerTest { Map props = new HashMap<>(); props.put("spring.jmx.enabled", false); props.put("spring.main.web-application-type", "none"); - props.put("test.broker-url", "tcp://localhost:" + broker.getMappedPort(61616)); + props.put("test.broker-url", "tcp://" + broker.getHost() + ":" + broker.getMappedPort(61616)); return props; } diff --git a/instrumentation/spring/spring-rabbit-1.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/spring/rabbit/v1_0/SpringRabbitMqTest.java b/instrumentation/spring/spring-rabbit-1.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/spring/rabbit/v1_0/SpringRabbitMqTest.java index 0c50a91cfe..950ee620db 100644 --- a/instrumentation/spring/spring-rabbit-1.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/spring/rabbit/v1_0/SpringRabbitMqTest.java +++ b/instrumentation/spring/spring-rabbit-1.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/spring/rabbit/v1_0/SpringRabbitMqTest.java @@ -20,6 +20,8 @@ import io.opentelemetry.sdk.testing.assertj.AttributeAssertion; import io.opentelemetry.sdk.trace.data.SpanData; import io.opentelemetry.semconv.NetworkAttributes; import io.opentelemetry.semconv.incubating.MessagingIncubatingAttributes; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.time.Duration; import java.util.ArrayList; import java.util.Arrays; @@ -56,8 +58,10 @@ public class SpringRabbitMqTest { private static ConfigurableApplicationContext applicationContext; private static ConnectionFactory connectionFactory; + private static String ip; + @BeforeAll - static void setUp() { + static void setUp() throws UnknownHostException { rabbitMqContainer = new GenericContainer<>("rabbitmq:latest") .withExposedPorts(5672) @@ -78,6 +82,7 @@ public class SpringRabbitMqTest { connectionFactory = new ConnectionFactory(); connectionFactory.setHost(rabbitMqContainer.getHost()); connectionFactory.setPort(rabbitMqContainer.getMappedPort(5672)); + ip = InetAddress.getByName(rabbitMqContainer.getHost()).getHostAddress(); } @AfterAll @@ -161,8 +166,7 @@ public class SpringRabbitMqTest { .hasKind(SpanKind.PRODUCER) .hasParent(trace.getSpan(0)) .hasAttributesSatisfyingExactly( - getAssertions( - "", "publish", "127.0.0.1", true, testHeaders)), + getAssertions("", "publish", ip, true, testHeaders)), // spring-cloud-stream-binder-rabbit listener puts all messages into a // BlockingQueue immediately after receiving // that's why the rabbitmq CONSUMER span will never have any child span (and @@ -172,8 +176,7 @@ public class SpringRabbitMqTest { .hasKind(SpanKind.CONSUMER) .hasParent(trace.getSpan(1)) .hasAttributesSatisfyingExactly( - getAssertions( - "", "process", "127.0.0.1", true, testHeaders)), + getAssertions("", "process", ip, true, testHeaders)), // created by spring-rabbit instrumentation span -> span.hasName("testQueue process") @@ -210,7 +213,7 @@ public class SpringRabbitMqTest { .hasKind(SpanKind.CLIENT) .hasAttributesSatisfyingExactly( equalTo(NetworkAttributes.NETWORK_TYPE, "ipv4"), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1"), + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip), satisfies( NetworkAttributes.NETWORK_PEER_PORT, AbstractLongAssert::isNotNegative), diff --git a/instrumentation/vertx/vertx-redis-client-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/vertx/v4_0/redis/VertxRedisClientTest.java b/instrumentation/vertx/vertx-redis-client-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/vertx/v4_0/redis/VertxRedisClientTest.java index be0f085e36..69add73333 100644 --- a/instrumentation/vertx/vertx-redis-client-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/vertx/v4_0/redis/VertxRedisClientTest.java +++ b/instrumentation/vertx/vertx-redis-client-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/vertx/v4_0/redis/VertxRedisClientTest.java @@ -19,6 +19,7 @@ import io.vertx.core.Vertx; import io.vertx.redis.client.Redis; import io.vertx.redis.client.RedisAPI; import io.vertx.redis.client.RedisConnection; +import java.net.InetAddress; import java.util.Arrays; import java.util.concurrent.CompletableFuture; import java.util.concurrent.TimeUnit; @@ -34,6 +35,8 @@ class VertxRedisClientTest { private static final GenericContainer redisServer = new GenericContainer<>("redis:6.2.3-alpine").withExposedPorts(6379); + private static String host; + private static String ip; private static int port; private static Vertx vertx; private static Redis client; @@ -42,10 +45,13 @@ class VertxRedisClientTest { @BeforeAll static void setup() throws Exception { redisServer.start(); + + host = redisServer.getHost(); + ip = InetAddress.getByName(host).getHostAddress(); port = redisServer.getMappedPort(6379); vertx = Vertx.vertx(); - client = Redis.createClient(vertx, "redis://localhost:" + port + "/1"); + client = Redis.createClient(vertx, "redis://" + host + ":" + port + "/1"); RedisConnection connection = client.connect().toCompletionStage().toCompletableFuture().get(30, TimeUnit.SECONDS); redis = RedisAPI.api(connection); @@ -199,10 +205,10 @@ class VertxRedisClientTest { equalTo(DbIncubatingAttributes.DB_STATEMENT, statement), equalTo(DbIncubatingAttributes.DB_OPERATION, operation), equalTo(DbIncubatingAttributes.DB_REDIS_DATABASE_INDEX, 1), - equalTo(ServerAttributes.SERVER_ADDRESS, "localhost"), + equalTo(ServerAttributes.SERVER_ADDRESS, host), equalTo(ServerAttributes.SERVER_PORT, port), equalTo(NetworkAttributes.NETWORK_PEER_PORT, port), - equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, "127.0.0.1") + equalTo(NetworkAttributes.NETWORK_PEER_ADDRESS, ip) }; } } diff --git a/instrumentation/vertx/vertx-sql-client-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/vertx/v4_0/sql/VertxSqlClientTest.java b/instrumentation/vertx/vertx-sql-client-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/vertx/v4_0/sql/VertxSqlClientTest.java index 61ad7dd497..dfe66dbb5a 100644 --- a/instrumentation/vertx/vertx-sql-client-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/vertx/v4_0/sql/VertxSqlClientTest.java +++ b/instrumentation/vertx/vertx-sql-client-4.0/javaagent/src/test/java/io/opentelemetry/javaagent/instrumentation/vertx/v4_0/sql/VertxSqlClientTest.java @@ -66,6 +66,7 @@ class VertxSqlClientTest { private static GenericContainer container; private static Vertx vertx; private static Pool pool; + private static String host; private static int port; @BeforeAll @@ -80,11 +81,12 @@ class VertxSqlClientTest { .withStartupTimeout(Duration.ofMinutes(2)); container.start(); vertx = Vertx.vertx(); + host = container.getHost(); port = container.getMappedPort(5432); PgConnectOptions options = new PgConnectOptions() .setPort(port) - .setHost(container.getHost()) + .setHost(host) .setDatabase(DB) .setUser(USER_DB) .setPassword(PW_DB); @@ -140,7 +142,7 @@ class VertxSqlClientTest { equalTo(DB_STATEMENT, "select * from test"), equalTo(DB_OPERATION, "SELECT"), equalTo(DB_SQL_TABLE, "test"), - equalTo(SERVER_ADDRESS, "localhost"), + equalTo(SERVER_ADDRESS, host), equalTo(SERVER_PORT, port)), span -> span.hasName("callback") @@ -194,7 +196,7 @@ class VertxSqlClientTest { equalTo(DB_NAME, DB), equalTo(DB_USER, USER_DB), equalTo(DB_STATEMENT, "invalid"), - equalTo(SERVER_ADDRESS, "localhost"), + equalTo(SERVER_ADDRESS, host), equalTo(SERVER_PORT, port)), span -> span.hasName("callback") @@ -230,7 +232,7 @@ class VertxSqlClientTest { equalTo(DB_STATEMENT, "select * from test where id = $?"), equalTo(DB_OPERATION, "SELECT"), equalTo(DB_SQL_TABLE, "test"), - equalTo(SERVER_ADDRESS, "localhost"), + equalTo(SERVER_ADDRESS, host), equalTo(SERVER_PORT, port)))); } @@ -260,7 +262,7 @@ class VertxSqlClientTest { equalTo(DB_STATEMENT, "insert into test values ($?, $?) returning *"), equalTo(DB_OPERATION, "INSERT"), equalTo(DB_SQL_TABLE, "test"), - equalTo(SERVER_ADDRESS, "localhost"), + equalTo(SERVER_ADDRESS, host), equalTo(SERVER_PORT, port)))); } @@ -346,7 +348,7 @@ class VertxSqlClientTest { equalTo(DB_STATEMENT, "select * from test"), equalTo(DB_OPERATION, "SELECT"), equalTo(DB_SQL_TABLE, "test"), - equalTo(SERVER_ADDRESS, "localhost"), + equalTo(SERVER_ADDRESS, host), equalTo(SERVER_PORT, port)), span -> span.hasName("callback") @@ -411,7 +413,7 @@ class VertxSqlClientTest { equalTo(DB_STATEMENT, "select * from test where id = $?"), equalTo(DB_OPERATION, "SELECT"), equalTo(DB_SQL_TABLE, "test"), - equalTo(SERVER_ADDRESS, "localhost"), + equalTo(SERVER_ADDRESS, host), equalTo(SERVER_PORT, port)), span -> span.hasName("callback")