- 2.59.0 (latest)
- 2.58.0
- 2.57.0
- 2.55.0
- 2.54.1
- 2.53.0
- 2.52.0
- 2.51.0
- 2.50.0
- 2.49.0
- 2.48.1
- 2.47.0
- 2.46.1
- 2.45.0
- 2.43.0
- 2.42.0
- 2.41.0
- 2.39.0
- 2.38.0
- 2.37.0
- 2.36.0
- 2.35.0
- 2.34.1
- 2.33.0
- 2.32.1
- 2.31.1
- 2.30.1
- 2.24.0
- 2.23.3
- 2.22.0
- 2.21.0
- 2.20.1
- 2.19.6
- 2.18.7
- 2.17.0
- 2.16.0
- 2.15.0
- 2.14.0
- 2.13.0
- 2.12.2
- 2.11.0
- 2.10.0
- 2.9.0
- 2.8.1
- 2.7.1
public class OpenTelemetryMetricsRecorder implements MetricsRecorder
OpenTelemetry implementation of recording metrics. This implementation collections the measurements related to the lifecyle of an RPC.
For the Otel implementation, an attempt is a single RPC invocation and an operation is the
collection of all the attempts made before a response is returned (either as a success or an
error). A single call (i.e. EchoClient.echo()
) should have an operation_count of 1 and may have
an attempt_count of 1+ (depending on the retry configurations).
Implements
MetricsRecorderConstructors
OpenTelemetryMetricsRecorder(OpenTelemetry openTelemetry, String serviceName)
public OpenTelemetryMetricsRecorder(OpenTelemetry openTelemetry, String serviceName)
Creates the following instruments for the following metrics:
- Attempt Latency: Histogram
- Operation Latency: Histogram
- Attempt Count: Counter
- Operation Count: Counter
Parameters | |
---|---|
Name | Description |
openTelemetry | io.opentelemetry.api.OpenTelemetry OpenTelemetry instance |
serviceName | String Service Name |
Methods
recordAttemptCount(long count, Map<String,String> attributes)
public void recordAttemptCount(long count, Map<String,String> attributes)
Record an attempt made. The attempt count number is stored in a LongCounter.
The count should be set as 1 every time this is invoked (each retry attempt)
Parameters | |
---|---|
Name | Description |
count | long The number of attempts made |
attributes | Map<String,String> Map of the attributes to store |
recordAttemptLatency(double attemptLatency, Map<String,String> attributes)
public void recordAttemptLatency(double attemptLatency, Map<String,String> attributes)
Record the latency for an individual attempt. Data is stored in a Histogram.
Parameters | |
---|---|
Name | Description |
attemptLatency | double Attempt Latency in ms |
attributes | Map<String,String> Map of the attributes to store |
recordOperationCount(long count, Map<String,String> attributes)
public void recordOperationCount(long count, Map<String,String> attributes)
Record an operation made. The operation count number is stored in a LongCounter.
The operation count should always be 1 and this should be invoked once.
Parameters | |
---|---|
Name | Description |
count | long The number of operations made |
attributes | Map<String,String> Map of the attributes to store |
recordOperationLatency(double operationLatency, Map<String,String> attributes)
public void recordOperationLatency(double operationLatency, Map<String,String> attributes)
Record the latency for the entire operation. This is the latency for the entire RPC, including all the retry attempts
Parameters | |
---|---|
Name | Description |
operationLatency | double Operation Latency in ms |
attributes | Map<String,String> Map of the attributes to store |