【发布时间】:2017-12-07 19:14:33
【问题描述】:
我正在开发一个微服务,它根据存储在自己的数据存储中的某些配置进行一些计算。计算 API 通过 REST API 存储。该应用程序是一个弹簧启动应用程序。 现在应用中主要有3层:
- REST 控制器
- 服务层
- DAO 层 - 它使用了 spring 数据。
我计划使用以下几点来处理日志记录和异常处理:
记录服务接收和响应的每个请求或至少 如果状态不是 2xx 系列的响应。
如果在 DAO 层或服务中存在任何已检查的异常 层然后记录它们并抛出一个自定义异常 运行时异常。
有几个自定义异常应该从服务中抛出 层主要是在我们遇到无效值、null 等场景时 值等。
在 REST 控制器中有一个 try catch 块并记录 异常,即消息以及堆栈跟踪并返回 做出相应的回应。
所以总体思路是让 RuntimeExceptions 一直传播到 REST 控制器,在那里它们应该被记录并相应地发送响应。如果发生检查的异常,则将它们记录在相同的方法中,并改为抛出自定义异常。
请建议在此类应用程序中记录异常的正确或好的方法。
【问题讨论】:
标签: java spring-boot exception-handling