From 85911bddc896b00a6af65d1268575c7b87ea0a3e Mon Sep 17 00:00:00 2001
From: 啊鑫 <t2856754968@163.com>
Date: 星期五, 08 十一月 2024 14:22:32 +0800
Subject: [PATCH] 1
---
MESApplication/Filter/ActionFilter.cs | 116 +++++++++++++++++++++++++++++++---------------------------
1 files changed, 62 insertions(+), 54 deletions(-)
diff --git a/MESApplication/Filter/ActionFilter.cs b/MESApplication/Filter/ActionFilter.cs
index ac64f63..7486dbb 100644
--- a/MESApplication/Filter/ActionFilter.cs
+++ b/MESApplication/Filter/ActionFilter.cs
@@ -1,71 +1,32 @@
-锘縰sing Microsoft.AspNetCore.Mvc;
+锘縰sing System.Diagnostics;
+using System.Text;
+using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Controllers;
using Microsoft.AspNetCore.Mvc.Filters;
using Newtonsoft.Json;
-using System.Diagnostics;
-using System.Text;
-namespace MESApplication;
+namespace MESApplication.Filter;
/// <summary>
-/// 鏂规硶杩囨护鍣�
+/// 鏂规硶杩囨护鍣�
/// </summary>
public class ActionFilter : IActionFilter
{
+ private Stopwatch _stopwatch;
+
/// <summary>
- /// 鐩戞帶鏃ュ織
+ /// 鐩戞帶鏃ュ織
/// </summary>
public static ILogger LoggerMonitor { get; set; }
/// <summary>
- /// 閿欒鏃ュ織
+ /// 閿欒鏃ュ織
/// </summary>
public static ILogger LoggerError { get; set; }
- private Stopwatch _stopwatch;
/// <summary>
- /// 鍒涘缓璇锋眰鏃ュ織鏂囨湰
- /// </summary>
- /// <param name="method"></param>
- /// <param name="controllerName"></param>
- /// <param name="actionName"></param>
- /// <param name="actionArgs"></param>
- /// <returns></returns>
- private static string CreateRequestLogText(string method, string controllerName, string actionName,
- string requestHead, string requestBody)
- {
- var sb = new StringBuilder();
- sb.Append(
- $"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} 璇锋眰{method}/{controllerName}/{actionName}鎺ュ彛锛岃姹侶ead锛歿requestHead}\n");
- sb.Append(
- $"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} 璇锋眰{method}/{controllerName}/{actionName}鎺ュ彛锛岃姹侭ody锛歿requestBody}\n");
- return sb.ToString();
- }
-
- /// <summary>
- /// 鍒涘缓鍝嶅簲鏃ュ織鏂囨湰
- /// </summary>
- /// <param name="method"></param>
- /// <param name="controllerName"></param>
- /// <param name="actionName"></param>
- /// <param name="result"></param>
- /// <returns></returns>
- private static string CreateResponseLogText(string method, string controllerName, string actionName, object result)
- {
- var sb = new StringBuilder();
- sb.Append(
- $"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} 瀹屾垚璇锋眰{method}/{controllerName}/{actionName}鎺ュ彛锛岃繑鍥炵粨鏋滐細");
- if (result != null)
- sb.Append($"{JsonConvert.SerializeObject(result)}");
- else
- sb.Append($"鏃�");
- return sb.ToString();
- }
-
-
- /// <summary>
- /// 鏂规硶鎵ц鍓�
+ /// 鏂规硶鎵ц鍓�
/// </summary>
/// <param name="context"></param>
/// <exception cref="NotImplementedException"></exception>
@@ -85,7 +46,8 @@
var requestHeaders = context.HttpContext.Request.Headers;
// 璁块棶璇锋眰涓殑 header 淇℃伅
- foreach (var header in requestHeaders) headers.Add(header.Key, header.Value);
+ foreach (var header in requestHeaders)
+ headers.Add(header.Key, header.Value);
var requestHead = JsonConvert.SerializeObject(headers);
Dictionary<string, object> bodys = new();
@@ -95,13 +57,17 @@
{
//dic.Add(argument.Key, argument.Value);
var parameter =
- JsonConvert.DeserializeObject<Dictionary<string, object>>(argument.Value.ToString());
- foreach (var item in parameter) bodys.Add(item.Key, item.Value);
+ JsonConvert
+ .DeserializeObject<Dictionary<string, object>>(
+ argument.Value.ToString());
+ foreach (var item in parameter)
+ bodys.Add(item.Key, item.Value);
}
var requestBody = JsonConvert.SerializeObject(bodys);
- var logText = CreateRequestLogText(context.HttpContext.Request.Method, desc.ControllerName,
+ var logText = CreateRequestLogText(
+ context.HttpContext.Request.Method, desc.ControllerName,
desc.ActionName, requestHead, requestBody);
//LoggerMonitor.LogDebug(logText);
//ErrorLog.Write(logText);
@@ -122,7 +88,8 @@
// 璁板綍寮傚父鏃ュ織
if (LoggerError != null)
{
- LoggerError.LogError(context.Exception, context.Exception.Message);
+ LoggerError.LogError(context.Exception,
+ context.Exception.Message);
ErrorLog.Write(
$@"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} 鎺ュ彛寮傚父锛歿JsonConvert.SerializeObject(context.Exception)}");
@@ -152,4 +119,45 @@
// ErrorLog.Write(msg);
// ErrorLog.Write("==================================================================================================================================");
}
+
+ /// <summary>
+ /// 鍒涘缓璇锋眰鏃ュ織鏂囨湰
+ /// </summary>
+ /// <param name="method"></param>
+ /// <param name="controllerName"></param>
+ /// <param name="actionName"></param>
+ /// <param name="actionArgs"></param>
+ /// <returns></returns>
+ private static string CreateRequestLogText(string method,
+ string controllerName, string actionName,
+ string requestHead, string requestBody)
+ {
+ var sb = new StringBuilder();
+ sb.Append(
+ $"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} 璇锋眰{method}/{controllerName}/{actionName}鎺ュ彛锛岃姹侶ead锛歿requestHead}\n");
+ sb.Append(
+ $"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} 璇锋眰{method}/{controllerName}/{actionName}鎺ュ彛锛岃姹侭ody锛歿requestBody}\n");
+ return sb.ToString();
+ }
+
+ /// <summary>
+ /// 鍒涘缓鍝嶅簲鏃ュ織鏂囨湰
+ /// </summary>
+ /// <param name="method"></param>
+ /// <param name="controllerName"></param>
+ /// <param name="actionName"></param>
+ /// <param name="result"></param>
+ /// <returns></returns>
+ private static string CreateResponseLogText(string method,
+ string controllerName, string actionName, object result)
+ {
+ var sb = new StringBuilder();
+ sb.Append(
+ $"{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:fff")} 瀹屾垚璇锋眰{method}/{controllerName}/{actionName}鎺ュ彛锛岃繑鍥炵粨鏋滐細");
+ if (result != null)
+ sb.Append($"{JsonConvert.SerializeObject(result)}");
+ else
+ sb.Append("鏃�");
+ return sb.ToString();
+ }
}
\ No newline at end of file
--
Gitblit v1.9.3