✨新增执行sql超时记录日志
This commit is contained in:
parent
0bcdb1cdfc
commit
c7e6e322bc
@ -39,6 +39,7 @@
|
||||
"DemoMode": false, //是否演示模式
|
||||
"SingleLogin": false, //是否允许多设备/浏览器登录
|
||||
"workId": 1, //雪花id唯一数字
|
||||
"sqlExecutionTime": 5,//Sql执行时间超过多少秒记录日志并警报
|
||||
"Upload": {
|
||||
"uploadUrl": "http://localhost:8888", //本地存储资源访问路径
|
||||
"localSavePath": "", //本地上传默认文件存储目录 wwwroot
|
||||
|
||||
@ -4,6 +4,7 @@ using Microsoft.AspNetCore.Hosting;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
using SqlSugar.IOC;
|
||||
using ZR.Common;
|
||||
using ZR.Model.System;
|
||||
|
||||
namespace ZR.ServiceCore.SqlSugar
|
||||
@ -202,6 +203,22 @@ namespace ZR.ServiceCore.SqlSugar
|
||||
#endregion
|
||||
}
|
||||
};
|
||||
db.GetConnectionScope(configId).Aop.OnLogExecuted = (sql, pars) =>
|
||||
{
|
||||
var sqlExecutionTime = AppSettings.Get<int>("sqlExecutionTime");
|
||||
if (db.Ado.SqlExecutionTime.TotalSeconds > sqlExecutionTime)
|
||||
{
|
||||
//代码CS文件名
|
||||
var fileName = db.Ado.SqlStackTrace.FirstFileName;
|
||||
//代码行数
|
||||
var fileLine = db.Ado.SqlStackTrace.FirstLine;
|
||||
//方法名
|
||||
var FirstMethodName = db.Ado.SqlStackTrace.FirstMethodName;
|
||||
var logInfo = $"Sql执行超时,用时{db.Ado.SqlExecutionTime.TotalSeconds}秒【{sql}】,fileName={fileName},line={fileLine},methodName={FirstMethodName}";
|
||||
WxNoticeHelper.SendMsg("Sql请求时间过长",logInfo);
|
||||
logger.Warn(logInfo);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
private static object GetParsValue(SugarParameter x)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user