From 7b7492880fb54c5e13c74c945f5ecfd1e447d2ea Mon Sep 17 00:00:00 2001 From: chenhuan Date: Fri, 24 Oct 2025 00:16:17 +0800 Subject: [PATCH] docs: instructions for using OpenTelemetry tracing Signed-off-by: chenhuan --- README.md | 32 ++++++++++++++++++++++++++++++++ README_CN.md | 35 ++++++++++++++++++++++++++++++++++- 2 files changed, 66 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index cfae381..c9c8905 100644 --- a/README.md +++ b/README.md @@ -112,6 +112,38 @@ public class Main { } ``` +### Tracing with OpenTelemetry + +To enable distributed tracing with OpenTelemetry in opengemini-client-java: + +1.Add dependencies: + +```xml + + io.opentelemetry + opentelemetry-api + ${opentelemetry.version} + + + io.opentelemetry + opentelemetry-exporter-jaeger-grpc + ${opentelemetry.version} + +``` + +2.Configure tracer and register interceptor: + +```java +/// Configure Tracer +JaegerGrpcSpanExporter exporter = JaegerGrpcSpanExporter.builder().setEndpoint("http://localhost:14250").build(); +SdkTracerProvider tracerProvider = SdkTracerProvider.builder().addSpanProcessor(BatchSpanProcessor.builder(exporter).build()).build(); +OpenTelemetry openTelemetry = OpenTelemetrySdk.builder().setTracerProvider(tracerProvider).build(); +Tracer tracer = openTelemetry.getTracer("opengemini-client-java"); + +// Register Interceptor +OtelInterceptor otelInterceptor = new OtelInterceptor(); +``` + ## Contribution Welcome to [join us](CONTRIBUTION.md) diff --git a/README_CN.md b/README_CN.md index 492cff4..91e0a45 100644 --- a/README_CN.md +++ b/README_CN.md @@ -111,6 +111,39 @@ public class Main { } } ``` + +### 使用OpenTelemetry进行链路追踪 + +在opengemini-client-java中启用OpenTelemetry分布式追踪: + +1.添加依赖(确保版本兼容): + +```xml + + io.opentelemetry + opentelemetry-api + ${opentelemetry.version} + + + io.opentelemetry + opentelemetry-exporter-jaeger-grpc + ${opentelemetry.version} + +``` + +2.配置追踪器并注册拦截器: + +```java +// Configure Tracer +JaegerGrpcSpanExporter exporter = JaegerGrpcSpanExporter.builder().setEndpoint("http://localhost:14250").build(); +SdkTracerProvider tracerProvider = SdkTracerProvider.builder().addSpanProcessor(BatchSpanProcessor.builder(exporter).build()).build(); +OpenTelemetry openTelemetry = OpenTelemetrySdk.builder().setTracerProvider(tracerProvider).build(); +Tracer tracer = openTelemetry.getTracer("opengemini-client-java"); + +// Register Interceptor +OtelInterceptor otelInterceptor = new OtelInterceptor(); +``` + ## 贡献 -欢迎[加入我们](CONTRIBUTION_CN.md) +欢迎[加入我们](CONTRIBUTION_CN.md) \ No newline at end of file