Skip to content

日志系统设计

审计日志组件

需求

所有系统都会有日志,但我们区分了 系统日志操作日志

  • 系统日志:主要用于开发者调试排查系统问题的,不要求固定格式和可读性
  • 操作日志:主要面向用户的,要求简单易懂,反映出用户所做的动作。

通过操作日志可追溯到 某人在某时干了某事情,如:

image-20220407132500900

功能

  1. 基于SpringBoot能够快速接入
  2. 对业务代码具有低入侵性

自定义 spring-boot-starter-log

具备以下功能:

  • 自定义spring boot starter
  • 定义日志注解
  • AOP拦截日志注解方法
  • 定义日志动态内容模板

模板中又需要实现:

  • 动态模板表达式解析:用强大的SpEL来解析表达式
  • 自定义函数:支持目标方法前置/后置的自定义函数

ELK日志系统

生产日志可视化