gpt4 book ai didi

java - 如何在 Quarkus 中启用 Jaeger JDBC 跟踪

转载 作者:行者123 更新时间:2023-11-30 01:46:12 26 4
gpt4 key购买 nike

如何在 Quarkus 中启用 Jaeger jdbc 跟踪?我已遵循 QuarkusOpentracing 指南,但没有看到任何相关信息。

我正在使用带有以下扩展的 Quarkus v0.21.2:

 -quarkus-smallrye-opentracing
-quarkus-resteasy
-quarkus-resteasy-jackson
-quarkus-hibernate-orm-panache
-quarkus-jdbc-postgresql
-quarkus-smallrye-openapi

我的代码只是一个基本的 Rest 端点,它调用我的实体的 Panache CRUD 操作。

感谢任何帮助。

我尝试了以下方法,但没有成功:

 - added @Traced to my entity
- changed quarkus.jaeger.sampler-type=const into quarkus.jaeger.sampler-type=remote

我在 Jaeger 中期望的是,1 个跟踪有 2 个跨度,一个用于 REST 调用,另一个用于 JDBC 调用。

但我看到的 REST 调用只有 1 个跨度。

最佳答案

您可以使用 opentracing java-jdbc扩展它将在 Quarkus 中工作(我没有测试 native 模式)。

您需要使用0.0.12版本,因为最新版本基于Opentracing 0.33,但Quarkus使用0.31版本。

  1. 将依赖项添加到您的 pom.xml:

    <dependency>
    <groupId>io.opentracing.contrib</groupId>
    <artifactId>opentracing-jdbc</artifactId>
    <version>0.0.12</version>
    </dependency>
  2. 更新您的 application.properties 以使用 opentracing-jdbc 驱动程序,以下内容适用于 Postgres 数据库:

quarkus.datasource.url = jdbc:tracing:postgresql://localhost:5433/mydatabasequarkus.datasource.driver = io.opentracing.contrib.jdbc.TracingDriverquarkus.hibernate-orm.dialect = org.hibernate.dialect.PostgreSQLDialect

然后您将在 Jaeger 中看到作为跨度的 SQL 查询。

关于java - 如何在 Quarkus 中启用 Jaeger JDBC 跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57854200/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com