使用 API 扩展插桩功能
结合使用 OpenTelemetry API 与 Java 代理,通过自定义 Span 和指标来扩展自动生成的遥测数据。
介绍
除了开箱即用的插桩功能外,您还可以使用 OpenTelemetry API 扩展 Java 代理,进行自定义手动插桩。 这使你能够为自己的代码创建 Span 和指标, 而无需进行太多代码更改。
依赖
添加对 opentelemetry-api 库的依赖。
Maven
<dependencies>
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-api</artifactId>
<version>1.55.0</version>
</dependency>
</dependencies>
Gradle
dependencies {
implementation('io.opentelemetry:opentelemetry-api:1.55.0')
}
OpenTelemetry
Java 代理是一个特殊情况,其中 GlobalOpenTelemetry 由代理设置。
只需调用 GlobalOpenTelemetry.get() 即可访问 OpenTelemetry 实例。
Span
注意
对于最常见的场景,请使用 @WithSpan 注解而非手动插桩。
有关更多信息,请参阅注解。
import io.opentelemetry.api.GlobalOpenTelemetry;
import io.opentelemetry.api.trace.Tracer;
Tracer tracer = GlobalOpenTelemetry.getTracer("application");
使用 Tracer 来创建 Span,具体说明见Span部分。
完整示例可在 示例仓库 中找到。
Meter
import io.opentelemetry.api.GlobalOpenTelemetry;
import io.opentelemetry.api.metrics.Meter;
Meter meter = GlobalOpenTelemetry.getMeter("application");
使用 Meter 来创建指标,具体说明见 Meter 部分。
完整示例可在 示例仓库 中找到。
意见反馈
这个页面对您有帮助吗?
Thank you. Your feedback is appreciated!
Please let us know how we can improve this page. Your feedback is appreciated!