• 操作日志的设计小结by大熊


    一、首先由同事的操作日志说起

      同事做了一个这样的操作日志,他定义系统所有发的json加入这两个字段,module和msg,然后在service里面用注解@Log拦截,即可记录对应的操作日志。

    {
        module:“xx模块”
        msg:“操作信息”
        data:”系统本身要发的业务请求数据
    }

      我一开始深以为然,因为我自己的做法是这样的,本来打算用注解,然后定义了一张日志表,发现用的接口数量不多,而且读写库操作耗费性能,在不增加系统复杂度的情况下没有使用消息队列,最终使用了最简单的代码侵入

    {
      //业务代码blabla
      xxxxx
      .....
      //日志代码
      log xx  。。。。  
    }

    二、公司大牛的解释

      随后公司大牛听到我们的讨论,说明了一些问题首先,我前端本身为什么要关注你这个东西?这样不就把前端后端绑架的死死的吗?

      

      其次,假如我想要看一个班级的老师名称做了什么事情,但是我看到一堆日志都是这样的

    {
      classId:1  
    }

      也就是说我要看老师我还得自个调一次数据库去查class表,这样怎么行。

           大牛的建议是,切面可以用,但是灵活性不高,就像上面我要查一个班级的老师,如果前期需要记录日志的接口数不多,先代码侵入吧,记录的还挺详细。

      

  • 相关阅读:
    微信小程序自定义navigationBar
    微信小程序-自动定位并将经纬度解析为具体地址
    a conexant audio couldnot befound
    平衡二叉树(AVL)java实现
    二叉树的各种非递归遍历
    选择排序
    快速排序
    冒泡排序
    数组洗牌
    haffman树c实现
  • 原文地址:https://www.cnblogs.com/daysn/p/10641269.html
Copyright © 2020-2023  润新知