一、什么是日志日志记录了代码的执行过程,根据目的不同,可以分为系统日志和操作日志。本文作者对操作日志进行了介绍,分析如何用五个步骤设计出用户操作日志,一起来看一下吧。
日志记录了代码的执行过程。根据目的不同,可分为系统日志和操作日志。
1)系统日志
记录系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件。开发人员可以通过它来检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹。系统日志包括系统日志、应用程序日志和安全日志。由于系统日志主要是为开发人员排查问题提供依据的,因此可读性没那么高。
2)操作日志
记录所有用户在系统中的操作过程和操作结果,如登录记录、修改记录等。操作日志主要是为用户服务,帮助他们查看历史操作记录,因此对可读性要求较高。
二、什么是操作日志具体而言就是记录“谁在什么时间、什么位置,对什么东西做了什么操作,从而产生了哪些变动”,因此一个完备的操作日志应包含以下信息:
- 用户(操作人及账号):谁执行了该操作
- 操作时间:什么时间执行了该操作
- 操作位置(业务菜单):在哪个模块上执行了该操作,如用户管理、订单管理等
- 操作对象:对哪个对象执行了该操作,如某道题、某份试卷
- 操作类型:具体执行了哪个操作,如登录、浏览、新增、删除等
- 变动值:在执行该操作后产生了哪些变化,主要针对于“编辑”类型的操作,如将题目难度由【难度一】修改为【难度二】
除了以上内容,还可根据业务场景补充记录其他字段:
- 操作页面:记录执行操作时调用的接口,如/crowd/system/user/list,当出现异常时,便于技术人员快速定位问题
- 登录IP:记录用户在何地执行的操作,如125.71.135.54四川省成都市武侯区电信
- 设备信息:记录用户通过哪种设备执行的操作,如Chrome101、Windows7、PC
- 业务相关字段:为了满足业务需要而记录的字段,如下图所示
拓展1:以上默认只记录操作成功的日志,如果业务需要,还可以增加“操作状态”字段来记录操作失败的日志,同时记录失败原因。