专栏名称: Java知音
专注于Java,推送技术文章,热门开源项目等。致力打造一个有实用,有情怀的Java技术公众号!
目录
今天看啥  ›  专栏  ›  Java知音

我司使用了两年的高效日志打印工具,非常牛逼!

Java知音  · 公众号  ·  · 2024-09-03 10:05
    

主要观点总结

本文介绍了如何通过注解和SpringAop实现日志自动填充用户id和订单Id的功能,详细描述了实现思路和关键代码解读,并进行了验证使用效果展示。

关键观点总结

关键观点1: 目标

打印日志时,自动填充用户id和订单Id等通参,无需手动指定。

关键观点2: 实现思路

1. 日志模板中声明占位符;2. 业务入口将用户信息放到线程ThreadLocal本地变量中;3. 使用SpringAop + 注解自动将用户信息放到线程上下文;4. 配置日志变量,读取上下文变量;5. 基于MDC将订单和用户信息放到线程的上下文Map。

关键观点3: 关键代码解读

1. 获取UserLog注解;2. 使用PropertyUtils.getProperty获取userId和orderId;3. 使用MDC设置变量和清除变量。

关键观点4: 验证使用效果

通过声明业务Service和测试日志打印,展示日志效果。

关键观点5: 总结

通过UserLog注解+Aop,可以简化业务日志打印,提高生产力。可以扩展能力,例如自动打印出入参日志,自动上报监控打点等。


免责声明

免责声明:本文内容摘要由平台算法生成,仅为信息导航参考,不代表原文立场或观点。 原文内容版权归原作者所有,如您为原作者并希望删除该摘要或链接,请通过 【版权申诉通道】联系我们处理。

原文地址:访问原文地址
总结与预览地址:访问总结与预览
推荐产品:   推荐产品
文章地址: 访问文章快照