方法一:使用OpenTelemetry Java Agent自动埋点 OpenTelemetry Java Agent提供了无侵入的接入方式,支持上百种Java框架自动上传Trace数据,详细的Java框架列表,请参见Supported Libraries and Versions。 下载Java Agent。 通过修改Java启动的VM参数上报链路数据。 通过HTTP上报数据:需要设置Trace接入点信息和Metric接入点信息。
具体解释参考https://github.com/open-telemetry/opentelemetry-java-instrumentation/blob/main/examples/extension/README.md#build-and-add-extensions 当然也可以把扩展agent打包到opentelemetry-javaagent的jar包里面 具体解释参考https://github.com/open-telemetry/opentelemetry-java-instrumentation/blob/main/examples/ex...
译自OpenTelemetry Tracing on Spring Boot, Java Agent vs. Micrometer Tracing,作者 Nicolas Fränkel。 基础应用程序及其基础设施 我将使用相同的基准应用程序:一个用Kotlin编写的简单 Spring Boot 应用程序。它提供一个端点。 端点背后的函数名为entry() 它调用另一个名为intermediate()的函数 后者使用WebClient实...
还在额外再配合使用-javaagent:opentelemetry-javaagent.jar使用,也就是 OpenTelemetry 提供的 agent。 才会导致自定义的InetAddressResolverProvider无法正常工作。 在复现这个问题之前先简单介绍下java.net.spi.InetAddressResolverProvider这个 SPI;它是在 JDK18 之后才提供的,在这之前我们使用InetAddress的内置解析器来解...
opentelemetry-java-instrumentation是一个隶属于OpenTelemetry系列的项目,这个项目就是一个基于Java Agent来实现无侵入式OpenTelemetry接入的官方Agent项目。使用方法非常简单: java -javaagent:path/to/opentelemetry-javaagent.jar -jar myapp.jar 将opentelemetry-javaagent.jar下载下来,然后使用上述指令就能够运行,在启动成功...
围绕OTel Java Agent 做了哪些增强 在接下来将近一年的时间里,围绕 openTelemetry-java-instrumentation,首先,我们对其现有的功能进行了升级重构。包括新插件支持,基础的 Tracing 能力增强,指标类型增加、指标维度增加等等;其次,迁移了很多过往几年沉淀的商业化能力。包括 Arthas 诊断,应用安全、内存 Dump,微服务治理(全链...
除了上面提到的这些,opentelemetry-java-instrumentation 还有很多亮点设计,比如类加载器隔离,opentelemetry-java-sdk 兼容,多 JDK 版本兼容等等,这里不再一一赘述,后续会推出系列文章专门介绍 OTel Java Agent 的一些亮点设计和技巧。 调研结论 当完成 OTel Java Agent 各方面的调研之后,我们会发现他的很多设计都是领先的...
前往官方仓库 github.com/open-telemet 下载opentelemetry-javaagent.jar 通过环境变量配置java agent和otlp导出器 通过环境变量的形式配置java agent:ENV JAVA_TOOL_OPTIONS="-javaagent:/usr/app/opentelemetry-javaagent.jar" 服务名称: ENV OTEL_SERVICE_NAME="foo-svc" 使用otlp协议的导出器:ENV OTEL_TRACES_EXPO...
Java OpenTelemetry Samplers可用来过滤Span。如果不希望修改业务代码,或者已经使用了OpenTelemetry Java Agent自动上报应用数据,那么可以参考方法一对OpenTelemetry Java Agent的功能进行扩展,编写自定义的OpenTelemetry Sampler,通过在Sampler中定义过滤规则,实现无侵入的Span过滤。如果您已经使用了OpenTelemetry Java SDK手动上报应...
如果您的应用使用了OpenTelemetry Agent,可以通过OpenTelemetry gRPC协议直接向DC发送数据,您只需要配置接入点信息以及license信息。您可以通过以下两种方式直接上报数据。 方式一:通过修改Java启动的VM参数上报数据。 java -javaagent:<opentelemetry-agent-path>-Dotel.service.name=<appName>-Dotel.exporter.otlp.protocol...