Ver código fonte

😁1、升级Furion v4.8.8.2 2、修改日志解析浏览器和操作系统内容

zuohuaijun 3 anos atrás
pai
commit
1b3e1c0047

+ 3 - 3
Admin.NET/Admin.NET.Core/Admin.NET.Core.csproj

@@ -21,9 +21,9 @@
     <PackageReference Include="DotNetCore.Compile.Environment" Version="3.2.0" />
     <PackageReference Include="DotNetCore.Natasha.CSharp" Version="5.1.0" />
     <PackageReference Include="FluentEmail.Smtp" Version="3.0.2" />
-    <PackageReference Include="Furion.Extras.Authentication.JwtBearer" Version="4.8.8.1" />
-    <PackageReference Include="Furion.Extras.ObjectMapper.Mapster" Version="4.8.8.1" />
-    <PackageReference Include="Furion.Pure" Version="4.8.8.1" />
+    <PackageReference Include="Furion.Extras.Authentication.JwtBearer" Version="4.8.8.2" />
+    <PackageReference Include="Furion.Extras.ObjectMapper.Mapster" Version="4.8.8.2" />
+    <PackageReference Include="Furion.Pure" Version="4.8.8.2" />
     <PackageReference Include="IPTools.China" Version="1.6.0" />
     <PackageReference Include="Lazy.Captcha.Core" Version="2.0.3" />
     <PackageReference Include="Magicodes.IE.Excel" Version="2.7.4.3" />

+ 10 - 4
Admin.NET/Admin.NET.Core/Logging/DatabaseLoggingWriter.cs

@@ -1,4 +1,6 @@
 using IPTools.Core;
+using Nest;
+using UAParser;
 
 namespace Admin.NET.Core;
 
@@ -47,6 +49,10 @@ public class DatabaseLoggingWriter : IDatabaseLoggingWriter
         string remoteIPv4 = loggingMonitor.remoteIPv4;
         (string ipLocation, double? longitude, double? latitude) = GetIpAddress(remoteIPv4);
 
+        var client = Parser.GetDefault().Parse(loggingMonitor.userAgent.ToString());
+        var browser = $"{client.UA.Family} {client.UA.Major}.{client.UA.Minor} / {client.Device.Family}";
+        var os = $"{client.OS.Family} {client.OS.Major} {client.OS.Minor}";
+
         if (loggingMonitor.actionName == "userInfo" || loggingMonitor.actionName == "logout")
         {
             await _sysLogVisRep.InsertAsync(new SysLogVis
@@ -59,8 +65,8 @@ public class DatabaseLoggingWriter : IDatabaseLoggingWriter
                 Location = ipLocation,
                 Longitude = longitude,
                 Latitude = latitude,
-                Browser = loggingMonitor.userAgent,
-                Os = loggingMonitor.osDescription + " " + loggingMonitor.osArchitecture,
+                Browser = browser, // loggingMonitor.userAgent,
+                Os = os, // loggingMonitor.osDescription + " " + loggingMonitor.osArchitecture,
                 Elapsed = loggingMonitor.timeOperationElapsedMilliseconds,
                 LogDateTime = logMsg.LogDateTime,
                 Account = account,
@@ -85,8 +91,8 @@ public class DatabaseLoggingWriter : IDatabaseLoggingWriter
                     Location = ipLocation,
                     Longitude = longitude,
                     Latitude = latitude,
-                    Browser = loggingMonitor.userAgent,
-                    Os = loggingMonitor.osDescription + " " + loggingMonitor.osArchitecture,
+                    Browser = browser, // loggingMonitor.userAgent,
+                    Os = os, // loggingMonitor.osDescription + " " + loggingMonitor.osArchitecture,
                     Elapsed = loggingMonitor.timeOperationElapsedMilliseconds,
                     LogDateTime = logMsg.LogDateTime,
                     Account = account,