如何知道 Spring Boot 应用程序运行由于硬错误而停止或刚刚正常完成

问题描述 投票:0回答:1

我有一个要求,比如如果 Spring Boot 应用程序由于错误而突然停止,我需要在 splunk 中发送警报。如果它正常停止,我有一个应用程序日志,因此根据日志我在 splunk 中配置警报消息。

示例:

@SpringBootApplication  
public class SpringBootHelloWorldExampleApplication {  
    public static void main(String[] args) {  
        SpringApplication.run(SpringBootHelloWorldExampleApplication.class, args);  
        log.debug("successfully completed");
    }  
} 

当应用程序正常停止时,我只会收到上面的日志,我的意思是成功完成应用程序。但是,如果我在应用程序中遇到任何错误,我将不会收到该日志。如果我收到此日志,那么我就会发送 splunk 警报。

如果发生任何错误,我将不会获得日志。那么我如何知道应用程序由于硬错误而停止,或者如何记录硬错误的内容。

java spring-boot splunk termination
1个回答
0
投票

一种简单的方法是使用

try { } catch { }
块来尝试运行 Spring Boot 应用程序。如果操作成功,则会继续记录
"successfully completed"
。否则,如果在执行过程中抛出异常,它将被 catch 块捕获,然后它将继续记录您喜欢的合适消息,或者您可以将其与异常消息结合起来。类似这样的东西:

    @SpringBootApplication
    public class SpringBootHelloWorldExampleApplication {
        public static void main(String[] args) {
            try {
                SpringApplication.run(SpringBootHelloWorldExampleApplication.class, args);
                log.debug("Successfully completed");
            } catch (Exception e) {
                log.debug("Error thrown: " + e.getMessage());
            }
      

  }
}
© www.soinside.com 2019 - 2024. All rights reserved.