Spring boot 定义exit codes 让你定位问题更加简单

Spring Boot and Exit Codes

Spring向JVM注册关闭钩子,以确保ApplicationContext在退出时正常关闭。除此之外,Spring还提供了ExitCodeGenerator接口。调用System.exit()时,此接口可以返回特定代码。

实现 Exit Codes

Spring boot 提供 ExitCodeGenerator和ExitCodeExceptionMapper 两个接口,实现自定义exit code .ExitCodeEvent 提供获取状态码

ExitCodeGenerator

实现ExitCodeGenerator接口,返回 exit code

Spring boot 定义exit codes 让你定位问题更加简单

 

使用SpringApplication.exit() 调用SpringApplication.run ,得到exit code

ExitCodeExceptionMapper

运行时异常时,返回exit code.实现CommandLineRunner,然后抛出数字格式异常

Spring boot 定义exit codes 让你定位问题更加简单

 

ExitCodeEvent

订阅一个监听器,接受exit code,当程序退出后,在ExitCodeEvent中读取 exit code

Spring boot 定义exit codes 让你定位问题更加简单

 

总结

程序退出后,根据exit code 定位问题是一种不错的方式。

 

本文转自:https://www.toutiao.com/i6741339447297573390/?tt_from=mobile_qq&utm_campaign=client_share&timestamp=1569713309&app=news_article&utm_source=mobile_qq&utm_medium=toutiao_android&req_id=2019092907282901001404707713FC1724&group_id=6741339447297573390

posted @ 2020-01-10 22:17  ppjj  阅读(660)  评论(0编辑  收藏  举报