0.简介
Abp 框架为我们自带了审计日志功能,审计日志可以方便地查看每次请求接口所耗的时间,能够帮助我们快速定位到某些性能有问题的接口。除此之外,审计日志信息还包含有每次调用接口时客户端请求的参数信息,客户端的 IP 与客户端使用的浏览器。有了这些数据之后,我们就可以很方便地复现接口产生 BUG 时的一些环境信息。
当然如果你脑洞更大的话,可以根据这些数据来开发一个可视化的图形界面,方便开发与测试人员来快速定位问题。
PS:
如果使用了 Abp.Zero 模块则自带的审计记录实现是存储到数据库当中的,但是在使用 EF Core + MySQL(EF Provider 为 Pomelo.EntityFrameworkCore.MySql) 在高并发的情况下会有数据库连接超时的问题,这块推荐是重写实现,自己采用 Redis 或者其他存储方式。
如果需要禁用审计日志功能,则需要在任意模块的预加载方法(PreInitialize()
) 当中增加如下代码关闭审计日志功能。
1
2
3
4
5
6
7
8
|
public class XXXStartupModule
{
public override PreInitialize()
{
// 禁用审计日志
Configuration.Auditing.IsEnabled = false;
}
}
|