Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring boot 如何在spring中调试事务?_Spring Boot_Spring Transactions - Fatal编程技术网

Spring boot 如何在spring中调试事务?

Spring boot 如何在spring中调试事务?,spring-boot,spring-transactions,Spring Boot,Spring Transactions,如何调试spring启动应用程序中的事务 有没有一种方法可以查看如何在事务上下文或其他上下文中对方法调用进行分组 您在这里提出了两个广泛的问题 1。如何调试事务(假设从文章标题来看,您正在寻找日志) 最简单的实现方法是在SpringBoot中使用捆绑的java.util.logging.Logger 下面的代码片段应该告诉您如何: public class EmojiController { private final static Logger logger = Logger

如何调试spring启动应用程序中的事务


有没有一种方法可以查看如何在事务上下文或其他上下文中对方法调用进行分组

您在这里提出了两个广泛的问题

1。如何调试事务(假设从文章标题来看,您正在寻找日志)

最简单的实现方法是在SpringBoot中使用捆绑的
java.util.logging.Logger

下面的代码片段应该告诉您如何:

public class EmojiController {

    private final static Logger logger = Logger
            .getLogger(EmojiController.class.getName()); 

    public ModelAndView getEmoji() {
        logger.info("emoji: " + emojiId + " lookup initiated");
        ---do something---
}
默认情况下,如果使用“启动器”,将使用Logback进行日志记录。还包括适当的Logback路由,以确保使用Java Util日志、Commons日志、Log4J或SLF4J的依赖库都能正常工作

2。将与一个事务相关的方法调用分组:

这是一个非常广泛的主题,在分布式应用程序体系结构(如微服务)的上下文中有更广泛的应用。问题是,如何将各种日志条目彼此关联起来,以便对它们进行分组,从而形成一个完整的视图

解决这个问题的方法是采用分布式跟踪的概念。你可以在Josh Long的这篇精彩文章中详细了解这一点

关于所讨论的技术的更详细的文档可以在这里找到-

  • 侦探-
  • 齐普金-
它应该可以帮助你实现你想要的,但是如果你对它们的用法有更多的疑问,请提出另一个问题

---编辑---

有一节是关于登录的

它展示了如何配置不同的日志框架,其中包括log4j

在您的情况下,配置的最后一行是:


log4j.logger.org.springframework.transaction=DEBUG

您在这里提出了两个广泛的问题

1。如何调试事务(假设从文章标题来看,您正在寻找日志)

最简单的实现方法是在SpringBoot中使用捆绑的
java.util.logging.Logger

下面的代码片段应该告诉您如何:

public class EmojiController {

    private final static Logger logger = Logger
            .getLogger(EmojiController.class.getName()); 

    public ModelAndView getEmoji() {
        logger.info("emoji: " + emojiId + " lookup initiated");
        ---do something---
}
默认情况下,如果使用“启动器”,将使用Logback进行日志记录。还包括适当的Logback路由,以确保使用Java Util日志、Commons日志、Log4J或SLF4J的依赖库都能正常工作

2。将与一个事务相关的方法调用分组:

这是一个非常广泛的主题,在分布式应用程序体系结构(如微服务)的上下文中有更广泛的应用。问题是,如何将各种日志条目彼此关联起来,以便对它们进行分组,从而形成一个完整的视图

解决这个问题的方法是采用分布式跟踪的概念。你可以在Josh Long的这篇精彩文章中详细了解这一点

关于所讨论的技术的更详细的文档可以在这里找到-

  • 侦探-
  • 齐普金-
它应该可以帮助你实现你想要的,但是如果你对它们的用法有更多的疑问,请提出另一个问题

---编辑---

有一节是关于登录的

它展示了如何配置不同的日志框架,其中包括log4j

在您的情况下,配置的最后一行是:


log4j.logger.org.springframework.transaction=DEBUG

1。您提到了日志记录,但我感兴趣的是spring框架可以记录哪些与它如何处理事务相关的内容,或者更好地说,它如何处理用@Transactional注释的方法。我还对如何通过使用调试器深入了解spring的内部工作方式感兴趣(寻找什么类,在哪里设置断点,如果这真的可行,等等)。我没有分布式应用程序,所以您的答案不适用。我想知道是否有一种方法(例如打开某些spring组件的日志记录)来查看spring如何处理/groups@Transactional注释的方法。我建议您在最初的问题中更加详细和具体。我相信这篇文章会为你解答,不管背景发生了什么为了让您了解它的内部功能和调试方法,我编辑了我的答案,特别介绍了如何调试事务性方法。我希望这能有所帮助。您提到了日志记录,但我感兴趣的是spring框架可以记录哪些与它如何处理事务相关的内容,或者更好地说,它如何处理用@Transactional注释的方法。我还对如何通过使用调试器深入了解spring的内部工作方式感兴趣(寻找什么类,在哪里设置断点,如果这真的可行,等等)。我没有分布式应用程序,所以您的答案不适用。我想知道是否有一种方法(例如打开某些spring组件的日志记录)来查看spring如何处理/groups@Transactional注释的方法。我建议您在最初的问题中更加详细和具体。我相信这篇文章会为你解答,不管背景发生了什么为了让您了解它的内部功能和调试方法,我编辑了我的答案,特别介绍了如何调试事务性方法。我希望有帮助