3

我正在尝试在我的 spring 应用程序中使用 AWS X-Ray 来检测 Mysql 调用。http 和 s3 检测工作正常。

我已经设置了属性:spring.datasource.jdbc-interceptors=com.amazonaws.xray.sql.mysql.TracingInterceptor

我在 build.gradle 中包含了以下依赖项

compile 'com.amazonaws:aws-xray-recorder-sdk-spring'
compile("com.amazonaws:aws-xray-recorder-sdk-core")
compile("com.amazonaws:aws-xray-recorder-sdk-aws-sdk")
compile("com.amazonaws:aws-xray-recorder-sdk-aws-sdk-instrumentor")
compile("com.amazonaws:aws-xray-recorder-sdk-apache-http")
compile("com.amazonaws:aws-xray-recorder-sdk-sql-mysql")
dependencyManagement {
    imports {
        mavenBom('com.amazonaws:aws-xray-recorder-sdk-bom:1.3.1')
    }
}

我正在使用 JpaRepositories。我希望在完成上述设置后自动检测我的所有 sql 查询。我在这个位置关注亚马逊文档: https ://docs.aws.amazon.com/xray/latest/devguide/xray-sdk-java-sqlclients.html

我错过了什么?

更新:我可以看到 spring 的健康端点的 mysql 跟踪。但是 jpa 调用仍然看不见。

4

1 回答 1

1

您是否使用定义的属性构造DataSource对象?spring.datasourceapplication.properties

在使用注解的类中查看此dataSource()方法 ( GitHub ) 以获取相关属性。RdsWebConfig@ConfigurationProperties(prefix = "spring.datasource")jdbc-interceptors

希望这可以帮助。

詹姆士

于 2018-03-14T19:39:17.263 回答