近期为了规范公司老旧项目的日志,主要也是为了便于日后错误排查以及加强对业务系统的监控,准备对原有的日志输出进行简单的改造。
解决思路
1、通过自定义异常来将可能出现的问题分为两大类,业务类及系统类。同时,所有异常向上抛出至controller层,集中处理。
2、通过自定义注解Log在所有的业务处理方法(control)上标注方法的用途及所属模块,用于监控所有业务的运行情况。
3、通过Spring的AOP,将注解log设置为切面,一旦调用相关方法时,即可将相关信息写入日志中。
解决方案
1、自定义异常
BaseException的主要属性如下所示:
private String module; //所属模块
private String code; //错误码
private Object[] args; //错误码对应的参数
private String defaultMessage; //错误消息
2、自定义注解及AOP实现
参考:Spring AOP 基于注解实现日志记录+自定义注解
问题及解决过程
1、自定义注解不生效
代码参考
https://gitee.com/y_project/RuoYi