|
@@ -5,6 +5,7 @@ using Infrastructure;
|
|
|
using SharedKernel;
|
|
using SharedKernel;
|
|
|
using System.Reflection;
|
|
using System.Reflection;
|
|
|
using Microsoft.Extensions.Hosting.WindowsServices;
|
|
using Microsoft.Extensions.Hosting.WindowsServices;
|
|
|
|
|
+using Serilog;
|
|
|
using Web.Api;
|
|
using Web.Api;
|
|
|
using Web.Api.Extensions;
|
|
using Web.Api.Extensions;
|
|
|
using Web.Api.Hubs;
|
|
using Web.Api.Hubs;
|
|
@@ -21,6 +22,19 @@ Console.WriteLine($"ENV={builder.Environment.EnvironmentName}");
|
|
|
Console.WriteLine($"현재 시간: {DateTime.Now} / {TimeZoneInfo.Local.Id}");
|
|
Console.WriteLine($"현재 시간: {DateTime.Now} / {TimeZoneInfo.Local.Id}");
|
|
|
|
|
|
|
|
builder.Host.UseWindowsService();
|
|
builder.Host.UseWindowsService();
|
|
|
|
|
+
|
|
|
|
|
+// Serilog — Production에서만 파일 로그
|
|
|
|
|
+if (builder.Environment.IsProduction())
|
|
|
|
|
+{
|
|
|
|
|
+ Log.Logger = new LoggerConfiguration()
|
|
|
|
|
+ .ReadFrom.Configuration(builder.Configuration)
|
|
|
|
|
+ .WriteTo.File("logs/webapi-.log",
|
|
|
|
|
+ rollingInterval: RollingInterval.Day,
|
|
|
|
|
+ retainedFileCountLimit: 30,
|
|
|
|
|
+ outputTemplate: "{Timestamp:yyyy-MM-dd HH:mm:ss.fff} [{Level:u3}] {Message:lj}{NewLine}{Exception}")
|
|
|
|
|
+ .CreateLogger();
|
|
|
|
|
+ builder.Host.UseSerilog();
|
|
|
|
|
+}
|
|
|
builder.Services.Configure<AppSettings>(builder.Configuration);
|
|
builder.Services.Configure<AppSettings>(builder.Configuration);
|
|
|
builder.Services
|
|
builder.Services
|
|
|
.AddApplication()
|
|
.AddApplication()
|