摘要:业务系统中难免要记录敏感操作,可以通过硬编码或者简单注解实现,但是都不够优雅,今天分享一个自己写的日志工具。
这是参考美团的一篇文章所实现的日志工具,能够灵活地记录操作日志,并且具有较好的扩展性,欢迎尝鲜。下面是这个工具的介绍和使用教程。
代码仓库:https://github.com/elltor/oplog
预览效果图:
oplog
oplog 一个便于使用的操作日志工具。
特性
- 便于使用。 提供
starter
, 通过注解开启功能并自动配置。 - 灵活。 工具提供了自定义函数、具有表达式解析的日志模版和注解层面的日志持久化控制。
- 可扩展。 提供了自定义函数、自定义日志操作用户、自定义持久化日志方式。
- 性能。 通过异步和缓存的方式提升处理性能。
业务逻辑架构
使用方法
前言
oplog-example
是一个演示模块,你可以通过这个项目快速了解工具的使用和功能。 启动项目后点击链接 http://localhost:8080/swagger-ui/index.html
访问 swagger 文档就可以尝试功能了。
1. 开始使用
开启日志记录功能 :
@EnableLogRecord(tenant = "com.elltor.biz", mode = AdviceMode.PROXY)
@SpringBootApplication
public class Application {
//.....
}
添加注解 @LogRecord
到你要记录日志的方法上。
被注解注释的方方法的入参和返回值将被作为日志模版的上下文。
@LogRecord(success = "查询了用户, 用户id : {#userid}"