可观测性
从应用程序组件获取有关其操作、时间安排以及与应用程序代码关系的信息,对于理解延迟至关重要。Spring Data Cassandra 通过 Cassandra 驱动程序提供了 Micrometer 仪器,用于在 Cassandra 交互期间收集观测数据。一旦设置好集成,Micrometer 将为每个 Cassandra 语句创建仪表和跨度(用于分布式跟踪)。
要启用仪器,请将以下配置应用于您的应用程序
@Configuration
class ObservabilityConfiguration {
@Bean
public ObservableCqlSessionFactoryBean observableCqlSession(CqlSessionBuilder builder,
ObservationRegistry registry) {
return new ObservableCqlSessionFactoryBean(builder, registry); (1)
}
@Bean
public ObservableReactiveSessionFactoryBean observableReactiveSession(CqlSession session,
ObservationRegistry registry) {
return new ObservableReactiveSessionFactoryBean(session, registry); (2)
}
}
| 1 | 包装 CQL 会话对象以观察 Cassandra 语句执行。同时,向 CqlSessionBuilder 注册 ObservationRequestTracker.INSTANCE。 |
| 2 | 包装 CQL 会话对象以观察响应式 Cassandra 语句执行。 |
ObservableCqlSessionFactoryBean 和 ObservableReactiveSessionFactoryBean 都支持配置 CassandraObservationConvention。
另请参阅 OpenTelemetry 语义约定 以获取更多参考。
约定
您可以在下面找到此项目声明的所有 GlobalObservabilityConventions 和 ObservabilityConventions 的列表。
ObservationConvention 类名 |
适用的 ObservationContext 类名 |
|
|
指标
以下是本项目声明的所有指标列表。
Cassandra 查询观测
为基于 Cassandra 的查询创建
io.micrometer.observation.Observation。
指标名称 spring.data.cassandra.query。类型 timer,基本单位 seconds。
封闭类的完全限定名称 org.springframework.data.cassandra.observability.CassandraObservation。
名称 |
描述 |
|
|
|
|
|
Cassandra 键空间的名称。 |
|
数据库操作。 |
|
数据库系统。 |
|
数据库主机名称。 |
|
逻辑远程端口号。 |
|
Cassandra 对等地址。 |
|
Cassandra 对等端口。 |
|
网络传输。 |
|
方法名称 |
|
Cassandra 会话 |
名称 |
描述 |
|
|
|
|
|
|
|
包含 Cassandra CQL 的键值。 |
|
一个包含给定节点发生的错误的标签。(由于名称包含 |
跨度
以下是本项目声明的所有 Span 列表。
Cassandra 查询观测跨度
为基于 Cassandra 的查询创建
io.micrometer.observation.Observation。
跨度名称 spring.data.cassandra.query。
封闭类的完全限定名称 org.springframework.data.cassandra.observability.CassandraObservation。
名称 |
描述 |
|
|
|
|
|
|
|
|
|
|
|
Cassandra 键空间的名称。 |
|
数据库操作。 |
|
包含 Cassandra CQL 的键值。 |
|
数据库系统。 |
|
数据库主机名称。 |
|
逻辑远程端口号。 |
|
Cassandra 对等地址。 |
|
Cassandra 对等端口。 |
|
网络传输。 |
|
方法名称 |
|
一个包含给定节点发生的错误的标签。(由于名称包含 |
|
Cassandra 会话 |