SimpleAdmin手摸手教学之:操作日志
一、说明
日志模块作为一个管理系统应该有的模块之一,在系统中有着举足轻重的作用,可以记录用户的操作记录和者系统异常,出现问题可以快速定位错误。在之前的系统开发中,我一般用的是Serilog
来进行日志模块的开发,然而在Fruion
推出了自己的日志功能之后,所有能改的系统都改成了Furion
的日志模块,非常灵活。本系统借助Fruion
的LoggingMonitor
监听日志功能,实现了操作日志和访问日志的记录。服务层无需填写任何代码,只需要在控制器方法上加上DisplayName
特性即可。
二、日志组件
想要实现以上功能,需要在注册LoggingMonitor
监听的时候增加一些配置,为了便于管理我写成了LoggingMonitorComponent
组件,可以在Web.Core
层组件文件夹找到。
这样当用户调用接口时,LoggingMonitor
就自动帮我们记录了请求的地址,参数,结果等信息,我们只需要在数据库写入器中获取日志的json字符串,转为实体,然后做逻辑处理就行。
三、访问日志
本系统中的访问日志主要是记录用户的登录登出操作,逻辑很简单,根据操作名称判断如果是用户登录和用户登出则进入访问日志的写入。
operation
也就是我们在接口方法上加的Description
特性中的值。写入日志之后可以在系统运维
->日志审计
->访问日志
中查看。
四、操作日志
本系统中操作日志主要是记录用户操作信息和操作异常日志。
默认Get
方法不会记录,只记录Post
方法并且方法上需要带有DisplayName
特性,登录登出的异常日志也会记录。写入之后可以在系统运维
->日志审计
->操作日志
中查看。
本文来自博客园,作者:HuTiger,转载请注明原文链接:https://www.cnblogs.com/huguodong/p/17035268.html,欢迎加入qq群927460240学习讨论
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」