美文网首页
后台操作日志

后台操作日志

作者: 无明子 | 来源:发表于2024-05-10 10:39 被阅读0次

    1、背景

            在企业级应用,我们经常需要记录后端用户操作各种功能的日志,方便未来发现业务有问题,能通过用户操作日志追湖全流程。此外,我们还可以通过统计用户操作日志,分析某些功能点击的次数,判斯哪些功能经常使用,那些功能不经常使用其至可以下线通过这种量化的分析,对于产品未来的功能规划也起到指导作用,所以优雅的设计一个后台操作日志功能,对于企业级系统必不可少。

    2、应用场景

    使用场景

    1、规则类变更场景(比如活动配置规则修改)、

    2、配置类变更场景(比如公共配置修改)

    3、敏感信息类变更场景(比如客户信息修改)

    以上场景,如果有变更,通常会对我们系统的业务产生直接的影响,如果人为失误、有可能造成直接的经济损失,所以我们需要记录每一笔操作日志。

    设计方案注意点

    1、记录后端操作日志必须与业务功能解耦,不能硬编码耦合在一起,增加开发人员的工作量;

    2、后端操作日志必须记录管理后台操作的菜单、操作的功能、操作人、操作时间等重要核心的信息;

    3、后端操作日志异步入库,不能阻塞主业务流程;

    4、后端操作日志重要的信息支持全模糊查询方便管理员快速查询信息,比如:操作内容字段;

    3、实现方案

    1、底层base公共服务提供日志相关的服务(保存日志、查询日志)

    2、通过自定义注解+AOP拦载请求,自动上报日志到base的日志服务

    3、通过引入guava的eventbus异步发布事件实现日志的异步入mysql库。

    4、考虑到操作内容字段内容比较大,基于canal+kafka,异步将日志表记录同步到es,通过全模糊查询es,可快速查询日志记录。同时考虑到操作日志表比较大,每3个月归档日志表一次,保存mysql日志表查询性能

    4、架构设计

    后端日志组件架构图

    相关文章

      网友评论

          本文标题:后台操作日志

          本文链接:https://www.haomeiwen.com/subject/klfefjtx.html