GH-3033: Register ObservationRegistry for Dynamic MessageChannels

Fixes: gh-3033

* ensure `ObservationRegistry` is registered on dynamically created `MessageChannel` instances in `StreamBridge`
This commit is contained in:
Agustino Lim
2024-11-08 13:20:36 +08:00
committed by Oleg Zhurakousky
parent f392488dae
commit a88c34fc9f
6 changed files with 45 additions and 4 deletions

View File

@@ -856,6 +856,21 @@ class StreamBridgeTests {
assertThat(new String(message.getPayload())).isEqualTo("JOHN DOE");
}
@Test
void test_3033() {
try (ConfigurableApplicationContext context = new SpringApplicationBuilder(
TestChannelBinderConfiguration.getCompleteConfiguration(
EmptyConfiguration.class)).web(WebApplicationType.NONE).run(
"--spring.cloud.stream.source=outputA",
"--spring.jmx.enabled=false")) {
StreamBridge streamBridge = context.getBean(StreamBridge.class);
streamBridge.send("outputA", MessageBuilder.withPayload("A").build());
OutputDestination output = context.getBean(OutputDestination.class);
assertThat(output.receive(1000, "outputA").getHeaders().containsKey("traceparent")).isTrue();
}
}
@EnableAutoConfiguration
public static class DynamicProducerDestinationConfig {
@Bean