-
Notifications
You must be signed in to change notification settings - Fork 202
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Broken e2e transaction when using Spring Cloud Gateway (spring-webflux) with agent 3.0.3-BETA.* #1578
Comments
hi @paveljakov, thanks for reporting this! If you are able to provide a sample github repo with instructions for us how to run and see the issue occurring, that will help us to get to it faster. |
Hello @trask, I have created sample git repo that reproduces the bug: /~https://github.com/paveljakov/ai-e2e-bug-sample |
Hi @trask, I have found a workaround. It seems problem is related to the fact that we are defining our own @Bean
public HttpClient httpClient() {
final TcpClient tcpClient = buildTcpClient();
final HttpClient httpClient = HttpClient.from(tcpClient);
return httpClient.compress(true);
} When I use @Bean
public HttpClientCustomizer httpClientCustomizer() {
return httpClient -> httpClient
.compress(true)
.tcpConfiguration(this::configureTcpClient);
} With 3.0.3 AI agent version our custom bean is not getting instrumented. I still think that this is a bug, because providing custom |
Thanks @paveljakov! This should be fixed now in the latest SNAPSHOT release: |
Expected behavior
Single e2e transaction should be built for single operation incoming into reactive server and going out to downstream services.
Actual behavior
While using AI agent version 3.0.2 traces from reactive gateway to downstream services are correctly correlated and mapped to initial operation transaction (
tx = [request -> reactive-gateway -> downstream-service -> ...]
), but when using AI agent version 3.0.3-BETA or 3.0.3-BETA.2 e2e transaction is broke, request to reactive gateway is logged separately (different operation IDs, different transactions) from downstream service (tx1 = [request -> reactive-gateway]
,tx2 = [request -> downstream-service -> ...]
).I have not tested reactive clients like
org.springframework.web.reactive.function.client.WebClient
directly.To Reproduce
Steps to reproduce the behavior: simple Spring MVC application and Spring Cloud Gateway application, gateway routes to spring mvc application, both applications uses AI javaagent.
Sample Application
If applicable, provide a sample application which reproduces the issue.
System information
Please provide the following information:
openjdk:11.0.9-jre-slim
Logs
Turn on SDK logs and attach/paste them to the issue. If using an application server, also attach any relevant server logs.
Be sure to remove any private information from the logs before posting!
Screenshots
If applicable, add screenshots to help explain your problem.
Expected behavior:
Single transaction
Actual behavior:
Two separate transactions
The text was updated successfully, but these errors were encountered: