自定义日志从上下文获取相关信息
This commit is contained in:
parent
24f67b54b4
commit
0504d18429
@ -61,10 +61,21 @@ public class DatabaseLoggingWriter : IDatabaseLoggingWriter, IDisposable
|
|||||||
var jsonStr = logMsg.Context?.Get("loggingMonitor")?.ToString();
|
var jsonStr = logMsg.Context?.Get("loggingMonitor")?.ToString();
|
||||||
if (string.IsNullOrWhiteSpace(jsonStr))
|
if (string.IsNullOrWhiteSpace(jsonStr))
|
||||||
{
|
{
|
||||||
var (actionName, controllerName) = ExtractActionAndController(logMsg.Message);
|
var title = logMsg.Context.Get("Title")?.ToString() ?? "自定义操作日志"; //从上下文获取 通过LogInformationExtension赋值
|
||||||
|
var actionName = logMsg.Context.Get("Action")?.ToString() ?? ""; //从上下文获取 由LogInformationExtension自动赋值
|
||||||
|
var controllerName = logMsg.Context.Get("Controller")?.ToString() ?? ""; //从上下文获取 由LogInformationExtension自动赋值
|
||||||
|
var url = logMsg.Context.Get("Url")?.ToString() ?? ""; //从上下文获取 由LogInformationExtension自动赋值
|
||||||
|
var method = logMsg.Context.Get("Method")?.ToString() ?? ""; //从上下文获取 由LogInformationExtension自动赋值
|
||||||
|
if (string.IsNullOrWhiteSpace(actionName) && string.IsNullOrWhiteSpace(controllerName))
|
||||||
|
{
|
||||||
|
//非LogInformationExtension调用,则从日志内容中获取控制器名称和函数名称
|
||||||
|
var (action, controller) = ExtractActionAndController(logMsg.Message);
|
||||||
|
actionName = action;
|
||||||
|
controllerName = controller;
|
||||||
|
}
|
||||||
await _db.Insertable(new SysLogOp
|
await _db.Insertable(new SysLogOp
|
||||||
{
|
{
|
||||||
DisplayTitle = "自定义操作日志",
|
DisplayTitle = title,
|
||||||
LogDateTime = logMsg.LogDateTime,
|
LogDateTime = logMsg.LogDateTime,
|
||||||
ActionName = actionName,
|
ActionName = actionName,
|
||||||
ControllerName = controllerName,
|
ControllerName = controllerName,
|
||||||
@ -74,6 +85,8 @@ public class DatabaseLoggingWriter : IDatabaseLoggingWriter, IDisposable
|
|||||||
Exception = logMsg.Exception == null ? null : JSON.Serialize(logMsg.Exception),
|
Exception = logMsg.Exception == null ? null : JSON.Serialize(logMsg.Exception),
|
||||||
Message = logMsg.Message,
|
Message = logMsg.Message,
|
||||||
LogLevel = logMsg.LogLevel,
|
LogLevel = logMsg.LogLevel,
|
||||||
|
HttpMethod = method,
|
||||||
|
RequestUrl = url,
|
||||||
Status = "200",
|
Status = "200",
|
||||||
}).ExecuteCommandAsync();
|
}).ExecuteCommandAsync();
|
||||||
return;
|
return;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user