qinchaoyue 6 달 전
부모
커밋
a013c7880e

+ 6 - 6
Hotline.sln

@@ -55,7 +55,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Hotline.XingTang", "src\Hot
 EndProject
 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Hotline.Application.Tests", "src\Hotline.Application.Tests\Hotline.Application.Tests.csproj", "{801A8807-F95E-428B-B8C3-3F9244B9E080}"
 EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Hotline.Logger", "Hotline.Logger\Hotline.Logger.csproj", "{451A7343-7814-4DA4-8FFC-7F085EC90B46}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Hotline.Logger", "src\Hotline.Logger\Hotline.Logger.csproj", "{37784861-ABC0-41F4-87B4-2E08A89A2C42}"
 EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -143,10 +143,10 @@ Global
 		{801A8807-F95E-428B-B8C3-3F9244B9E080}.Debug|Any CPU.Build.0 = Debug|Any CPU
 		{801A8807-F95E-428B-B8C3-3F9244B9E080}.Release|Any CPU.ActiveCfg = Release|Any CPU
 		{801A8807-F95E-428B-B8C3-3F9244B9E080}.Release|Any CPU.Build.0 = Release|Any CPU
-		{451A7343-7814-4DA4-8FFC-7F085EC90B46}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{451A7343-7814-4DA4-8FFC-7F085EC90B46}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{451A7343-7814-4DA4-8FFC-7F085EC90B46}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{451A7343-7814-4DA4-8FFC-7F085EC90B46}.Release|Any CPU.Build.0 = Release|Any CPU
+		{37784861-ABC0-41F4-87B4-2E08A89A2C42}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{37784861-ABC0-41F4-87B4-2E08A89A2C42}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{37784861-ABC0-41F4-87B4-2E08A89A2C42}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{37784861-ABC0-41F4-87B4-2E08A89A2C42}.Release|Any CPU.Build.0 = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE
@@ -176,7 +176,7 @@ Global
 		{CF2A8B80-FF4E-4291-B383-D735BB629F32} = {D041C554-B78E-4AAF-B597-E309DC8EEF4F}
 		{9F99C272-5BC2-452C-9D97-BC756AF04669} = {D041C554-B78E-4AAF-B597-E309DC8EEF4F}
 		{801A8807-F95E-428B-B8C3-3F9244B9E080} = {08D63205-1445-430F-A4AB-EF1744E3AC11}
-		{451A7343-7814-4DA4-8FFC-7F085EC90B46} = {D041C554-B78E-4AAF-B597-E309DC8EEF4F}
+		{37784861-ABC0-41F4-87B4-2E08A89A2C42} = {D041C554-B78E-4AAF-B597-E309DC8EEF4F}
 	EndGlobalSection
 	GlobalSection(ExtensibilityGlobals) = postSolution
 		SolutionGuid = {4B8EA790-BD13-4422-8D63-D6DBB77B823F}

+ 1 - 1
src/Hotline.Api/Hotline.Api.csproj

@@ -24,8 +24,8 @@
   </ItemGroup>
 
   <ItemGroup>
-    <ProjectReference Include="..\..\Hotline.Logger\Hotline.Logger.csproj" />
     <ProjectReference Include="..\Hotline.Application\Hotline.Application.csproj" />
+    <ProjectReference Include="..\Hotline.Logger\Hotline.Logger.csproj" />
   </ItemGroup>
 
   <ItemGroup>

+ 7 - 3
src/Hotline.Api/Middleware/HeaderMiddleware.cs

@@ -16,13 +16,17 @@ public class HeaderMiddleware
 
     public async Task InvokeAsync(HttpContext context)
     {
-
         await _next(context);
 
         // 为返回类型是 FileStreamResult 的请求添加 头部信息
-        if (context.Response.StatusCode == 200 && context.Response is FileStreamResult)
+        if (context.Response.StatusCode == StatusCodes.Status200OK)
         {
-            context.Response.Headers.Add("Access-Control-Expose-Headers", "Content-Disposition");
+            var result = context.Items["Result"] as IActionResult;
+
+            if (result is FileStreamResult)
+            {
+                context.Response.Headers.Add("Access-Control-Expose-Headers", "Content-Disposition");
+            }
         }
     }
 }

+ 2 - 2
src/Hotline.Api/StartupExtensions.cs

@@ -233,8 +233,8 @@ internal static class StartupExtensions
         //app.MapSubscribeHandler();
         
         // 为特定返回结果添加 头部信息 的中间件
-         app.UseMiddleware<HeaderMiddleware>();
-        app.UseRequestResponseLogging();
+        app.UseMiddleware<HeaderMiddleware>();
+        //app.UseRequestResponseLogging();
         return app;
     }
 }

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
src/Hotline.Api/logs/20241028-log.txt


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
src/Hotline.Api/logs/acc-log20241028.txt


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
src/Hotline.Api/logs/log20241028.txt


+ 2 - 1
Hotline.Logger/Hotline.Logger.csproj → src/Hotline.Logger/Hotline.Logger.csproj

@@ -10,10 +10,11 @@
     <PackageReference Include="Microsoft.AspNetCore.Http.Abstractions" Version="2.2.0" />
     <PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="8.0.2" />
     <PackageReference Include="Serilog.Sinks.File" Version="6.0.0" />
+    <PackageReference Include="Serilog.Sinks.RollingFile" Version="3.3.0" />
   </ItemGroup>
 
   <ItemGroup>
-    <ProjectReference Include="..\src\Hotline.Share\Hotline.Share.csproj" />
+    <ProjectReference Include="..\Hotline.Share\Hotline.Share.csproj" />
   </ItemGroup>
 
 </Project>

+ 0 - 0
Hotline.Logger/Models/AccModel.cs → src/Hotline.Logger/Models/AccModel.cs


+ 0 - 0
Hotline.Logger/Models/BaseLogModel.cs → src/Hotline.Logger/Models/BaseLogModel.cs


+ 13 - 1
Hotline.Logger/RequestResponseLoggingMiddleware.cs → src/Hotline.Logger/RequestResponseLoggingMiddleware.cs

@@ -28,7 +28,19 @@ namespace Hotline.Logger
         {
             _next = next;
             _logger = new LoggerConfiguration()
-                        .WriteTo.File(Path.Combine("logs", @"acc-log.txt"), rollingInterval: RollingInterval.Day, retainedFileCountLimit: 3).CreateLogger();
+
+                .WriteTo.Logger(configure => configure // 输出到文件
+                .MinimumLevel.Debug()
+                .WriteTo.File(  //单个日志文件,总日志,所有日志存到这里面
+                    $"logs\\log.txt",
+                    rollingInterval: RollingInterval.Day,
+                    outputTemplate: "{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} [{Level:u3}] {Message:lj}{NewLine}{Exception}")
+                .WriteTo.RollingFile( //每天生成一个新的日志,按天来存日志
+                    "logs\\{Date}-log.txt", //定输出到滚动日志文件中,每天会创建一个新的日志,按天来存日志
+                    retainedFileCountLimit: 7,
+                    outputTemplate: "{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} [{Level:u3}] {Message:lj}{NewLine}{Exception}"
+                ))
+                        .CreateLogger();
         }
 
         /// <summary>

이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.