Skip to content

Commit

Permalink
Adapt to observation changes in Framework
Browse files Browse the repository at this point in the history
  • Loading branch information
bclozel committed Nov 2, 2022
1 parent 05c5b12 commit 0acaa0e
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 5 deletions.
Expand Up @@ -56,16 +56,16 @@ public boolean supportsContext(Observation.Context context) {
@Override
public KeyValues getLowCardinalityKeyValues(ClientRequestObservationContext context) {
mutateClientRequest(context);
Iterable<Tag> tags = this.tagsProvider.tags(context.getCarrier(), context.getResponse(), context.getError());
Iterable<Tag> tags = this.tagsProvider.tags(context.getRequest(), context.getResponse(), context.getError());
return KeyValues.of(tags, Tag::getKey, Tag::getValue);
}

private void mutateClientRequest(ClientRequestObservationContext context) {
// WebClientExchangeTagsProvider relies on a request attribute to get the URI
// template, we need to adapt to that.
ClientRequest clientRequest = ClientRequest.from(context.getCarrier())
ClientRequest clientRequest = ClientRequest.from(context.getRequest())
.attribute(URI_TEMPLATE_ATTRIBUTE, context.getUriTemplate()).build();
context.setCarrier(clientRequest);
context.setRequest(clientRequest);
}

@Override
Expand Down
Expand Up @@ -45,7 +45,7 @@ class ClientObservationConventionAdapterTests {
private ClientObservationConventionAdapter convention = new ClientObservationConventionAdapter(TEST_METRIC_NAME,
new DefaultWebClientExchangeTagsProvider());

private ClientRequest request = ClientRequest.create(HttpMethod.GET, URI.create("/resource/test")).build();
private ClientRequest.Builder requestBuilder = ClientRequest.create(HttpMethod.GET, URI.create("/resource/test"));

private ClientResponse response = ClientResponse.create(HttpStatus.OK).body("foo").build();

Expand All @@ -54,7 +54,8 @@ class ClientObservationConventionAdapterTests {
@BeforeEach
void setup() {
this.context = new ClientRequestObservationContext();
this.context.setCarrier(this.request);
this.context.setCarrier(this.requestBuilder);
this.context.setRequest(this.requestBuilder.build());
this.context.setResponse(this.response);
this.context.setUriTemplate("/resource/{name}");
}
Expand Down

0 comments on commit 0acaa0e

Please sign in to comment.