chore: trim observability surface docs
This commit is contained in:
@@ -23,7 +23,7 @@
|
|||||||
| MQTT 客户端 | Eclipse Paho 1.2.5 |
|
| MQTT 客户端 | Eclipse Paho 1.2.5 |
|
||||||
| 会话索引 | Redis |
|
| 会话索引 | Redis |
|
||||||
| 熔断/限流 | Resilience4j 2 |
|
| 熔断/限流 | Resilience4j 2 |
|
||||||
| 可观测 | Micrometer + Prometheus + OpenTelemetry |
|
| 可观测 | Micrometer + Prometheus |
|
||||||
| 冷存 | S3 / OSS / 本地 |
|
| 冷存 | S3 / OSS / 本地 |
|
||||||
| 构建 | Maven + Spotless + ArchUnit |
|
| 构建 | Maven + Spotless + ArchUnit |
|
||||||
|
|
||||||
@@ -38,7 +38,7 @@ lingniu-vehicle-ingest/
|
|||||||
│ │ ├── ingest-core/ Pipeline / Dispatcher / Disruptor / Session 桥
|
│ │ ├── ingest-core/ Pipeline / Dispatcher / Disruptor / Session 桥
|
||||||
│ │ ├── session-core/ 设备会话 + 鉴权 + Token + Redis SessionStore
|
│ │ ├── session-core/ 设备会话 + 鉴权 + Token + Redis SessionStore
|
||||||
│ │ ├── vehicle-identity/ 跨协议车辆身份解析 + MySQL 外部标识绑定
|
│ │ ├── vehicle-identity/ 跨协议车辆身份解析 + MySQL 外部标识绑定
|
||||||
│ │ └── observability/ metrics / tracing / health
|
│ │ └── observability/ metrics / health
|
||||||
│ ├── protocols/
|
│ ├── protocols/
|
||||||
│ │ ├── protocol-gb32960/ GB/T 32960
|
│ │ ├── protocol-gb32960/ GB/T 32960
|
||||||
│ │ ├── protocol-jt808/ JT/T 808(统一身份映射 + 事件 metadata 内部 VIN + 注册/鉴权/心跳/注销/位置/批量位置/参数/属性/媒体/透传/未知上行和坏帧兜底/断链清理会话/下行分包)
|
│ │ ├── protocol-jt808/ JT/T 808(统一身份映射 + 事件 metadata 内部 VIN + 注册/鉴权/心跳/注销/位置/批量位置/参数/属性/媒体/透传/未知上行和坏帧兜底/断链清理会话/下行分包)
|
||||||
|
|||||||
@@ -309,7 +309,7 @@ flowchart TB
|
|||||||
codec["ingest-codec-common<br/>BCD / CRC / BCC / bit 工具"]
|
codec["ingest-codec-common<br/>BCD / CRC / BCC / bit 工具"]
|
||||||
session["session-core<br/>设备会话、命令分发接口、会话存储"]
|
session["session-core<br/>设备会话、命令分发接口、会话存储"]
|
||||||
identity["vehicle-identity<br/>跨协议身份解析、MySQL 绑定表"]
|
identity["vehicle-identity<br/>跨协议身份解析、MySQL 绑定表"]
|
||||||
obs["observability<br/>metrics / tracing / health"]
|
obs["observability<br/>metrics / health"]
|
||||||
api["ingest-api<br/>ProtocolId / RawFrame / VehicleEvent / 注解 SPI"]
|
api["ingest-api<br/>ProtocolId / RawFrame / VehicleEvent / 注解 SPI"]
|
||||||
registry["HandlerRegistry<br/>按协议、命令、infoType 路由"]
|
registry["HandlerRegistry<br/>按协议、命令、infoType 路由"]
|
||||||
dispatcher["Dispatcher<br/>RawFrame 到 Handler 到 EventBus"]
|
dispatcher["Dispatcher<br/>RawFrame 到 Handler 到 EventBus"]
|
||||||
@@ -535,7 +535,7 @@ flowchart LR
|
|||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>modules/core/observability</td>
|
<td>modules/core/observability</td>
|
||||||
<td>监控、指标、追踪、健康检查等横切能力。</td>
|
<td>监控、指标、健康检查等横切能力。</td>
|
||||||
<td>核心管线和 Sink 运行状态。</td>
|
<td>核心管线和 Sink 运行状态。</td>
|
||||||
<td>Micrometer 指标、健康信息。</td>
|
<td>Micrometer 指标、健康信息。</td>
|
||||||
<td><span class="tag green">可用性</span><span class="tag">延迟监控</span></td>
|
<td><span class="tag green">可用性</span><span class="tag">延迟监控</span></td>
|
||||||
|
|||||||
@@ -267,6 +267,10 @@ class MavenModuleProfileTest {
|
|||||||
void observabilityBuildSurfaceUsesMicrometerWithoutUnusedOpenTelemetryBom() throws Exception {
|
void observabilityBuildSurfaceUsesMicrometerWithoutUnusedOpenTelemetryBom() throws Exception {
|
||||||
Document pom = rootPom();
|
Document pom = rootPom();
|
||||||
Document observabilityPom = modulePom("modules/core/observability/pom.xml");
|
Document observabilityPom = modulePom("modules/core/observability/pom.xml");
|
||||||
|
String readme = Files.readString(repositoryRoot().resolve("README.md"));
|
||||||
|
String moduleDataFlow = Files.readString(repositoryRoot().resolve("docs/module-data-flow.html"));
|
||||||
|
String traceSpan = Files.readString(repositoryRoot()
|
||||||
|
.resolve("modules/core/ingest-api/src/main/java/com/lingniu/ingest/api/annotation/TraceSpan.java"));
|
||||||
|
|
||||||
assertThat(hasProjectProperty(pom, "micrometer.version"))
|
assertThat(hasProjectProperty(pom, "micrometer.version"))
|
||||||
.isTrue();
|
.isTrue();
|
||||||
@@ -281,6 +285,15 @@ class MavenModuleProfileTest {
|
|||||||
.isFalse();
|
.isFalse();
|
||||||
assertThat(productionJavaContains("io.opentelemetry"))
|
assertThat(productionJavaContains("io.opentelemetry"))
|
||||||
.isFalse();
|
.isFalse();
|
||||||
|
assertThat(readme)
|
||||||
|
.contains("| 可观测 | Micrometer + Prometheus |")
|
||||||
|
.doesNotContain("OpenTelemetry");
|
||||||
|
assertThat(moduleDataFlow)
|
||||||
|
.contains("observability<br/>metrics / health")
|
||||||
|
.doesNotContain("observability<br/>metrics / tracing / health");
|
||||||
|
assertThat(traceSpan)
|
||||||
|
.doesNotContain("OpenTelemetry")
|
||||||
|
.doesNotContain("span");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
import java.lang.annotation.Target;
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 为 Handler 方法开启 OpenTelemetry span。
|
* 为 Handler 方法标记轻量 traceId 诊断名称。
|
||||||
*/
|
*/
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
@Target(ElementType.METHOD)
|
@Target(ElementType.METHOD)
|
||||||
|
|||||||
Reference in New Issue
Block a user