java - 不使用方面跟踪 Spring 方法调用

标签 java spring spring-boot soa

几天来,我陷入了一个(对我来说)相当具有挑战性的问题。

在我当前的项目中,我们有一个基于 SOA 的大型架构,我们的目标是监视和记录所有传入请求、调用的服务、调用的 DAO 及其结果。由于某些原因我们无法使用方面,因此我们的想法是直接连接到 JavaVM 并观察发生了什么。

在我们的研究中,我们发现 Byteman 和 Bytebuddy 都使用 Java Machine Tool Interface 来连接虚拟机并将代码注入(inject)虚拟机。

仔细观察 Byteman,我们发现我们必须为每个操作类指定 Byteman-Operation,这在我们的例子中是根本不可能的。

是否有更好、更有效的方法来记录所有传入请求、调用的服务、调用的 DAO 及其结果?我们应该编写自己的连接到 JMTI 的代理吗?你们会推荐什么?

最佳答案

我认为找出特定服务方法调用的方法可以重载。使用 APM 不是更简单、更智能吗?

关于java - 不使用方面跟踪 Spring 方法调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59482131/

相关文章:

java - spring JTable创建抛出异常

spring-boot - 在 Springboot 应用程序中 Autowiring ObjectMapper

java - Spring Data JPA 'jpaMappingContext' 错误,IllegalStateException : Expected to be able to resolve a type but got null

java - 如何在 javascript 中使用我在 java 中创建的包?

c# - java 和 c# 中右移运算符的不同结果

Spring JMX Mbean 未出现或未在 jconsole 中注册

带有 Gradle 的 Spring Boot 缺少 Thymeleaf 的依赖项

java - 此 Java 和 C 代码之间的区别?

eclipse - 无法在Eclipse工作区中导入spring-boot gradle项目

java - 空指针异常 : null when trying to use jdbcTemplete