FR: Support for Spring WebClient
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Java
- Sterne
- 46
- Forks
- 20
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
FR: Support for Spring WebClient
In my sample application using Spring WebClient with X-Ray Java agent auto-instrumentation, the trace header is not injected into the http header.
This is the code block for the downstream http call using Spring webclient
import org.springframework.web.reactive.function.client.WebClient;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequiredArgsConstructor
@Slf4j
public class GoodbyeController {
private final WebClient additionWebClient;
@GetMapping("/goodbye")
public ResponseEntity<?> goodbye() throws InterruptedException {
MathResult addResult =
this.additionWebClient
.get()
.uri(
uri ->
uri.path("/add")
.queryParam("x", Long.toString(x))
.queryParam("y", Long.toString(y))
.build())
.retrieve()
.bodyToMono(MathResult.class)
.block();
}
}
In the downstream http request handler, I printed out the request header and found that no trace id,
2021-03-04 16:19:18.841 INFO [Addition App,604108865e2cf420e5d967d9c6dc0ec3,e5d967d9c6dc0ec3,true] 25 --- [nio-8080-exec-8] c.g.t.s.tracingpoc.AdditionController : Starting to add... x: [100], y: [1000]. RequestHeaders: [{accept-encoding=gzip, user-agent=ReactorNetty/0.9.8.RELEASE, host=<redacted>:8080, accept=*/*}]
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit dem im Issue gezeigten Spring WebClient-Aufruf und untersuche die vorhandenen Einstiegspunkte zur Instrumentierung des HTTP-Clients im Agenten; es wird keine Repository-Datei und kein Test genannt. Als abgeschlossen gilt, wenn eine nachgelagerte WebClient-Anfrage den X-Ray-Trace-Header enthält und das Verhalten durch einen geeigneten Test abgedeckt ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java, spring
- Bereich
- api, backend
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100