Skip to content

Commit b067c54

Browse files
committed
HBase test stabilization
1 parent a9b3cb6 commit b067c54

File tree

3 files changed

+11
-6
lines changed

3 files changed

+11
-6
lines changed

jmx-scraper/src/integrationTest/java/io/opentelemetry/contrib/jmxscraper/target_systems/HBaseIntegrationTest.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,16 @@
1616
import org.testcontainers.containers.wait.strategy.Wait;
1717

1818
public class HBaseIntegrationTest extends TargetSystemIntegrationTest {
19-
private static final int DEFAULT_MASTER_SERVICE_PORT = 16000;
20-
2119
@Override
2220
protected GenericContainer<?> createTargetContainer(int jmxPort) {
2321
return new GenericContainer<>("dajobe/hbase")
2422
.withEnv("HBASE_MASTER_OPTS", genericJmxJvmArguments(jmxPort))
2523
.withStartupTimeout(Duration.ofMinutes(2))
26-
.withExposedPorts(jmxPort, DEFAULT_MASTER_SERVICE_PORT)
27-
.waitingFor(Wait.forListeningPorts(jmxPort, DEFAULT_MASTER_SERVICE_PORT));
24+
.withExposedPorts(jmxPort)
25+
// HBase initialization process is finished a long time after all the ports are opened.
26+
// Because of this it is necessary to wait for log message confirming that startup process
27+
// is complete.
28+
.waitingFor(Wait.forLogMessage(".+Master has completed initialization.+", 1));
2829
}
2930

3031
@Override

jmx-scraper/src/integrationTest/java/io/opentelemetry/contrib/jmxscraper/target_systems/MetricsVerifier.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,11 @@ private void verifyAllExpectedMetricsWereReceived(List<Metric> metrics) {
114114

115115
assertionNames.removeAll(receivedMetricNames);
116116
if (!assertionNames.isEmpty()) {
117-
fail("Metrics expected but not received: " + assertionNames);
117+
fail(
118+
"Metrics expected but not received: "
119+
+ assertionNames
120+
+ "\nReceived only: "
121+
+ receivedMetricNames);
118122
}
119123
}
120124
}

jmx-scraper/src/integrationTest/java/io/opentelemetry/contrib/jmxscraper/target_systems/TargetSystemIntegrationTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ protected void verifyMetrics() {
185185
.collect(Collectors.toList());
186186

187187
assertThat(metrics)
188-
.describedAs("metrics reported but none from JMX scraper")
188+
.describedAs("Metrics received but not suitable for JMX scraper")
189189
.isNotEmpty();
190190

191191
metricsVerifier.verify(metrics);

0 commit comments

Comments
 (0)