可观察性
Apache Pulsar 的 Spring 包含通过 Micrometer 管理可观测性的方法。
微米观测
这脉冲星模板和脉冲星听者采用Micrometer观测API进行仪器化。
当千米计时观测登记册提供BEAN,发送和接收作被追踪并计时。
自定义标签
默认实现中添加了bean.name模板观察和listener.id标签用于听众观察。
要为定时器和追踪添加其他标签,请配置自定义脉冲星模板观察约定或脉冲听众观察大会分别是模板或监听器容器。
你可以转职默认脉冲星模板观察约定或默认PulsarListenerObservationConvention或者提供全新的实现。 |
可观测性 - 指标
以下是该项目宣布的所有指标列表。
听众观察
当脉冲星监听者收到消息时创建的观测。
公制名称 spring.pulsar.listener(由约定类定义org.springframework.pulsar.observation.DefaultPulsarListenerObservationConvention).类型 定时器.
公制名称 spring.pulsar.listener.active(由约定类定义org.springframework.pulsar.observation.DefaultPulsarListenerObservationConvention).类型 长任务计时器.
| 启动观察后添加的KeyValue可能缺失在*.active指标中。 |
微米内部用途纳 秒为基单元。然而,每个后端都决定了实际的基单元。(即普罗米修斯用秒) |
包围类别的完全限定名称org.springframework.pulsar.observation.PulsarListenerObservation.
所有标签必须以spring.pulsar.listener前缀! |
名称 |
描述 |
|
接收到消息的监听器容器的ID。 |
模板观察
当脉冲星模板发送消息时创建的观测。
公制名称 spring.pulsar.template(由约定类定义org.springframework.pulsar.observation.DefaultPulsarTemplateObservationConvention).类型 定时器.
公制名称 spring.pulsar.template.active(由约定类定义org.springframework.pulsar.observation.DefaultPulsarTemplateObservationConvention).类型 长任务计时器.
| 启动观察后添加的KeyValue可能缺失在*.active指标中。 |
微米内部用途纳 秒为基单元。然而,每个后端都决定了实际的基单元。(即普罗米修斯用秒) |
包围类别的完全限定名称org.springframework.pulsar.observation.PulsarTemplateObservation.
所有标签必须以spring.pulsar.template前缀! |
名称 |
描述 |
|
发送消息的模板名称。 |
可观测性——跨度
以下是该项目宣布的所有跨度列表。
听众观察时段
当脉冲星监听者收到消息时创建的观测。
跨区名称 spring.pulsar.listener(由约定类定义org.springframework.pulsar.observation.DefaultPulsarListenerObservationConvention).
包围类别的完全限定名称org.springframework.pulsar.observation.PulsarListenerObservation.
所有标签必须以spring.pulsar.listener前缀! |
名称 |
描述 |
|
接收到消息的监听器容器的ID。 |
模板观测范围
当脉冲星模板发送消息时创建的观测。
跨区名称 spring.pulsar.template(由约定类定义org.springframework.pulsar.observation.DefaultPulsarTemplateObservationConvention).
包围类别的完全限定名称org.springframework.pulsar.observation.PulsarTemplateObservation.
所有标签必须以spring.pulsar.template前缀! |
名称 |
描述 |
|
发送消息的模板名称。 |
更多信息请参见测距追踪。
手动配置无Spring Boot
如果你不使用 Spring Boot,你需要配置并提供观测登记册以及微尺追踪。更多信息请参见测距追踪。
Spring Boot自动配置
如果你使用 Spring Boot,Spring Boot 执行器会自动配置一个实例观测登记册给你的。
如果微米-核心在类路径上,每一次停止的观察都会指向一个计时器。
Spring Boot还会自动配置微米追踪功能。这包括对Brave OpenTelemetry、Zipkin和Wavefront的支持。使用Micrometer Observation API时,完成观测后会向Zipkin或Wavefront报告跨度。你可以通过设置属性来控制描摹管理。追踪.你可以用Zipkin搭配管理.zipkin.追踪,而Wavefront则使用管理。波前.
示例配置
以下示例展示了配置您的 Spring Boot 应用程序以使用 Brave 的 Zipkin 的步骤。
-
在你的申请中添加所需的依赖关系(分别用Maven或Gradle):
-
Maven
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>io.micrometer</groupId> <artifactId>micrometer-tracing-bridge-brave</artifactId> </dependency> <dependency> <groupId>io.zipkin.reporter2</groupId> <artifactId>zipkin-reporter-brave</artifactId> </dependency> <dependency> <groupId>io.zipkin.reporter2</groupId> <artifactId>zipkin-sender-urlconnection</artifactId> </dependency> </dependencies>格拉德勒dependencies { implementation 'org.springframework.boot:spring-boot-starter-actuator' implementation 'io.micrometer:micrometer-tracing-bridge-brave' implementation 'io.zipkin.reporter2:zipkin-reporter-brave' implementation 'io.zipkin.reporter2:zipkin-sender-urlconnection' }注意 你需要
'io.zipkin.reporter2:zipkin-sender-urlconnection'只有当你的应用没有配置WebClient或RestTemplate时才会依赖。 -
-
在您的申请中添加所需的属性:
management: tracing.enabled: true zipkin: tracing.endpoint: "http://localhost:9411/api/v2/spans"这
追踪.端点上述情况预期Zipkin会如此处所述在本地运营。
此时,你的应用应该会在发送和接收Pulsar消息时记录追踪。你应该可以在 Zipkin 界面(本地运行时在 localhost:9411)中查看它们。
| 你也可以在 Spring for Apache Pulsar 示例应用中看到之前的配置。 |
这些步骤与其他支持的追踪环境配置非常相似。