请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

审计日志的存储相关问题

AuditLogInterceptor 日志直接存储到数据库中,

  1. 会不会影响接口性能(因为有额外的审计日志入库开销)
  2. 如果审计日志入库出错了(比如在preHandle auditlog.save异常了),是不是就影响正常业务场景了;

想和老师确认下教程中的审计日志处理是否可以在生产环境直接使用(如果需要改进能否给出思路或参考),针对上面的两个疑惑麻烦老师解答下

正在回答 回答被采纳积分+3

1回答

NoCodeNoBug 2020-11-02 14:32:22

我的个人理解:

  1. 性能影响:性能影响肯定是有的,但并发量小的话,性能消耗其实也还好。我认为,这种存储日志的方式,仅限于并发量不高的场景。如果高并发场景下,log可能是写入log文件,不做数据库操作,或者是放到消息队列,定期将其持久化存储。

  2. 审计日志入库报错:首先,我认为这个业务报错的概率不会太高,因为业务比较简单。审计日志,并不一定是个强需求日志。就是说这个接口报错,不应该影响到业务的正常运行。实际使用中,可以将其try掉,报错时,在log打印日志,并将报错信息及时记录。

  3. 是否可以在生产环境使用:我认为,还是一样,低并发无所谓,性能损耗不是特别高。高并发下,就需要考虑用各种方式对其做优化了。

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信