Package org.springframework.http.client.observation

# Class ClientRequestObservationContext

java.lang.Object
io.micrometer.observation.Observation.Context
io.micrometer.observation.transport.SenderContext<C>
io.micrometer.observation.transport.RequestReplySenderContext<ClientHttpRequest,ClientHttpResponse>
org.springframework.http.client.observation.ClientRequestObservationContext

All Implemented Interfaces:
  `io.micrometer.observation.Observation.ContextView`, `io.micrometer.observation.transport.ResponseContext<ClientHttpResponse>`

public class ClientRequestObservationContext extends io.micrometer.observation.transport.RequestReplySenderContext<ClientHttpRequest,ClientHttpResponse>
Context that holds information for metadata collection during the `client HTTP exchanges` observations.

This context also extends `RequestReplySenderContext` for propagating tracing information with the HTTP client exchange.

Since:
  6.0
Author:
  Brian Clozel

## Constructor Summary

Constructors
Constructor
Description
`ClientRequestObservationContext(ClientHttpRequest request)`
Create an observation context for `ClientHttpRequest` observations.

## Method Summary

Modifier and Type
Method
Description
`String`
`getUriTemplate()`
Return the URI template used for the current client exchange, `null` if none was used.
`void`
`setUriTemplate(String uriTemplate)`
Set the URI template used for the current client exchange.

### Methods inherited from class io.micrometer.observation.transport.RequestReplySenderContext

`getResponse, setResponse`

### Methods inherited from class io.micrometer.observation.transport.SenderContext

`getCarrier, getKind, getRemoteServiceAddress, getRemoteServiceName, getSetter, setCarrier, setRemoteServiceAddress, setRemoteServiceName`

### Methods inherited from class io.micrometer.observation.Observation.Context

`addHighCardinalityKeyValue, addHighCardinalityKeyValues, addLowCardinalityKeyValue, addLowCardinalityKeyValues, clear, computeIfAbsent, containsKey, get, getAllKeyValues, getContextualName, getError, getHighCardinalityKeyValue, getHighCardinalityKeyValues, getLowCardinalityKeyValue, getLowCardinalityKeyValues, getName, getOrDefault, getParentObservation, getRequired, put, remove, removeHighCardinalityKeyValue, removeHighCardinalityKeyValues, removeLowCardinalityKeyValue, removeLowCardinalityKeyValues, setContextualName, setError, setName, setParentObservation, toString`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface io.micrometer.observation.Observation.ContextView

`getOrDefault`

## Constructor Details

### ClientRequestObservationContext

public ClientRequestObservationContext(ClientHttpRequest request)
Create an observation context for `ClientHttpRequest` observations.

Parameters:
  `request` - the HTTP client request

## Method Details

### setUriTemplate

public void setUriTemplate(@Nullable String uriTemplate)
Set the URI template used for the current client exchange.

### getUriTemplate

@Nullable public String getUriTemplate()
Return the URI template used for the current client exchange, `null` if none was used.