Observability
从应用程序组件中获取有关其操作、时间和与应用程序代码的关系的见解对于理解延迟至关重要。Spring Data Redis 通过 Lettuce 驱动程序提供 Micrometer 集成,以在 Redis 交互期间收集观察结果。一旦集成完成,Micrometer 将为每个 Redis 命令创建度量标准和跨度(用于分布式跟踪)。
要启用集成,请将以下配置应用于 LettuceClientConfiguration
:
@Configuration
class ObservabilityConfiguration {
@Bean
public ClientResources clientResources(ObservationRegistry observationRegistry) {
return ClientResources.builder()
.tracing(new MicrometerTracingAdapter(observationRegistry, "my-redis-cache"))
.build();
}
@Bean
public LettuceConnectionFactory lettuceConnectionFactory(ClientResources clientResources) {
LettuceClientConfiguration clientConfig = LettuceClientConfiguration.builder()
.clientResources(clientResources).build();
RedisConfiguration redisConfiguration = …;
return new LettuceConnectionFactory(redisConfiguration, clientConfig);
}
}
另请参阅 OpenTelemetry Semantic Conventions 以供参考。
Redis Command Observation
围绕 Redis 命令执行创建的计时器。
度量名称 spring.data.redis
。类型 timer
和 基本单位 seconds
。
封闭类 org.springframework.data.redis.connection.lettuce.observability.RedisObservation
的完全限定名称。
Name |
Description |
|
Redis command value. |
|
Redis database index. |
|
Database system. |
|
Redis user. |
|
数据库主机名称。 |
|
Logical remote port number. |
|
Mongo peer address. |
|
Mongo peer port. |
|
Network transport. |
Name |
Description |
|
Redis statement. |
|
Redis error response. |
Redis Command Observation Span
围绕 Redis 命令执行创建的计时器。
跨度名称 spring.data.redis
。
封闭类 org.springframework.data.redis.connection.lettuce.observability.RedisObservation
的完全限定名称。
Name |
Description |
|
Redis command value. |
|
Redis database index. |
|
Redis statement. |
|
Database system. |
|
Redis user. |
|
数据库主机名称。 |
|
Logical remote port number. |
|
Mongo peer address. |
|
Mongo peer port. |
|
Network transport. |
|
Redis error response. |