[성현모] WebApi LogXnet으로 변경

This commit is contained in:
SHM
2025-07-24 16:16:40 +09:00
parent f03bf86d31
commit c6fc5328df
6 changed files with 24 additions and 110 deletions

View File

@ -1,85 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<log4net>
<root>
<level value="ALL"/>
<appender-ref ref="Console"/>
<appender-ref ref="file"/>
<appender-ref ref="fatal_file"/>
</root>
<appender name="Console" type="log4net.Appender.ManagedColoredConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date] [%thread] %-2level: %message%newline" />
</layout>
<mapping>
<level value="FATAL" />
<foreColor value="White" />
<backColor value="Red" />
</mapping>
<mapping>
<level value="ERROR" />
<foreColor value="Red" />
</mapping>
<mapping>
<level value="WARN" />
<foreColor value="Yellow" />
</mapping>
<mapping>
<level value="INFO" />
<foreColor value="Green" />
</mapping>
<mapping>
<level value="DEBUG" />
<foreColor value="Blue" />
</mapping>
<mapping>
<level value="EXCEPTION" />
<foreColor value="DarkRed" />
</mapping>
<mapping>
<level value="DB" />
<foreColor value="DarkMagenta" />
</mapping>
<mapping>
<level value="HTTP" />
<foreColor value="DarkYellow" />
</mapping>
<mapping>
<level value="SOCKET" />
<foreColor value="DarkCyan" />
</mapping>
<mapping>
<level value="CONTROLLER" />
<foreColor value="Magenta" />
</mapping>
</appender>
<appender name="file" type="log4net.Appender.RollingFileAppender">
<file value="log/" />
<datepattern value="yyyy////MM////yyyy-MM-dd'.log'"/>
<appendToFile value="true" />
<rollingStyle value="Date" />
<staticLogFileName value="false" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date] [%thread] %level %logger - %message%newline" />
</layout>
</appender>
<appender name="fatal_file" type="log4net.Appender.RollingFileAppender">
<file value="log/" />
<datepattern value="yyyy////MM////yyyy-MM-dd'_fatal.log'"/>
<appendToFile value="true" />
<rollingStyle value="Date" />
<staticLogFileName value="false" />
<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="FATAL" />
<param name="LevelMax" value="FATAL" />
</filter>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="[%date] [%thread] %level %logger - %message%newline" />
</layout>
</appender>
</log4net>
</configuration>

Binary file not shown.

View File

@ -31,7 +31,7 @@ namespace AuthApi.Controllers
[HttpGet("health")] [HttpGet("health")]
public async Task<IResult> Health() public async Task<IResult> Health()
{ {
Log4net.WriteLine($"[{GetRequestMethod()}:{GetMethodName()}] [Client IP:{GetClientIP()}] [RequestUrl:{GetRequestUrl()}]{Environment.NewLine}", LogType.CONTROLLER); LogXnet.WriteLine($"[{GetRequestMethod()}:{GetMethodName()}] [Client IP:{GetClientIP()}] [RequestUrl:{GetRequestUrl()}]{Environment.NewLine}", LogXLabel.CONTROLLER);
await Task.CompletedTask; await Task.CompletedTask;
return Results.Ok("Healthy"); return Results.Ok("Healthy");
@ -42,7 +42,7 @@ namespace AuthApi.Controllers
{ {
Guid guid = Guid.NewGuid(); Guid guid = Guid.NewGuid();
Log4net.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogType.CONTROLLER); LogXnet.WriteLine($"[Request][{GetRequestMethod()}:{GetMethodName()}][Client IP:{GetClientIP()}][RequestUrl:{GetRequestUrl()}]::({guid}){Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER);
RegisterResponse response = new RegisterResponse(); RegisterResponse response = new RegisterResponse();
if (request?.UserID != null && request?.Password != null) if (request?.UserID != null && request?.Password != null)
@ -50,7 +50,7 @@ namespace AuthApi.Controllers
response = await _authService.CreateUser(request); response = await _authService.CreateUser(request);
} }
Log4net.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogType.CONTROLLER); LogXnet.WriteLine($"[Response]::({guid}){Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER);
return Results.Ok(response); return Results.Ok(response);
} }
@ -58,7 +58,7 @@ namespace AuthApi.Controllers
[HttpPost("login")] [HttpPost("login")]
public async Task<IResult> Login([FromBody] Login request) public async Task<IResult> Login([FromBody] Login request)
{ {
Log4net.WriteLine($"[Request]({guid}) api/auth/register{Environment.NewLine} {request.ToJson()}", LogType.CONTROLLER); LogXnet.WriteLine($"[Request]({guid}) api/auth/register{Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER);
LoginResponse response = new LoginResponse(); LoginResponse response = new LoginResponse();
response.UserID = request.UserID; response.UserID = request.UserID;
@ -81,7 +81,7 @@ namespace AuthApi.Controllers
await _authService.UpdateLoginInfo(request, response.RefreshToken); await _authService.UpdateLoginInfo(request, response.RefreshToken);
} }
Log4net.WriteLine($"[Response]({guid}) api/auth/register{Environment.NewLine} {response.ToJson()}", LogType.CONTROLLER); LogXnet.WriteLine($"[Response]({guid}) api/auth/register{Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER);
return Results.Ok(response); return Results.Ok(response);
} }
@ -89,12 +89,12 @@ namespace AuthApi.Controllers
[HttpPost("logout")] [HttpPost("logout")]
public async Task<IResult> Logout([FromBody] Logout request) public async Task<IResult> Logout([FromBody] Logout request)
{ {
Log4net.WriteLine($"[Request]({guid}) api/auth/register{Environment.NewLine} {request.ToJson()}", LogType.CONTROLLER); LogXnet.WriteLine($"[Request]({guid}) api/auth/register{Environment.NewLine} {request.ToJson()}", LogXLabel.CONTROLLER);
var response = _authService.LogoutUser(request); var response = _authService.LogoutUser(request);
await Task.CompletedTask; await Task.CompletedTask;
Log4net.WriteLine($"[Response]({guid}) api/auth/register{Environment.NewLine} {response.ToJson()}", LogType.CONTROLLER); LogXnet.WriteLine($"[Response]({guid}) api/auth/register{Environment.NewLine} {response.ToJson()}", LogXLabel.CONTROLLER);
return Results.Ok(response); return Results.Ok(response);
} }

View File

@ -14,14 +14,13 @@ string configDir = @"../../Config";
string configFileName = "WebApi.AuthApi.Config.json"; string configFileName = "WebApi.AuthApi.Config.json";
//raed log4net configs //raed log4net configs
if (Log4net.IsConfigLoad == true) if (LogXnet.ReadConfig(@$"{configDir}/LogXnetConfig.json") == true)
{ {
Log4net.WriteLine("Log4net Init Success"); LogXnet.WriteLine("LogXnet Init Success");
Log4net.AutoRemoveLog();
} }
else else
{ {
Console.WriteLine("Log4net Init Failed"); Console.WriteLine("LogXnet Init Failed");
return; return;
} }
@ -73,7 +72,7 @@ if (preloadConfig.OpenConfig($@"{configDir}/{configFileName}") == true)
} }
else else
{ {
Log4net.WriteLine("Config Preload Load Error.", LogType.Error); LogXnet.WriteLine("Config Preload Load Error.", LogXLabel.Error);
return; return;
} }
@ -86,7 +85,7 @@ bool isIIS = false;
if (configService?.OpenConfig($@"{configDir}/{configFileName}") == true) if (configService?.OpenConfig($@"{configDir}/{configFileName}") == true)
{ {
Log4net.WriteLine("WebApi Config Success."); LogXnet.WriteLine("WebApi Config Success.");
var apiConfig = ConfigService<WebApiConfig>.Config; var apiConfig = ConfigService<WebApiConfig>.Config;
if (apiConfig != null) if (apiConfig != null)
{ {
@ -114,15 +113,15 @@ if (configService?.OpenConfig($@"{configDir}/{configFileName}") == true)
} }
else else
{ {
Log4net.WriteLine("WebApi Config Error."); LogXnet.WriteLine("WebApi Config Error.");
return; return;
} }
// Configure the HTTP request pipeline. // Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment()) if (app.Environment.IsDevelopment())
{ {
Log4net.WriteLine($"IsDevelopment:{app.Environment.IsDevelopment()}"); LogXnet.WriteLine($"IsDevelopment:{app.Environment.IsDevelopment()}");
Log4net.WriteLine($"Swagger Url: {serverUrl}/swagger"); LogXnet.WriteLine($"Swagger Url: {serverUrl}/swagger");
app.UseSwagger(); app.UseSwagger();
app.UseSwaggerUI(); app.UseSwaggerUI();
} }
@ -139,6 +138,6 @@ if (isIIS == true)
} }
else else
{ {
Log4net.WriteLine($"Operation Url: {serverUrl}"); LogXnet.WriteLine($"Operation Url: {serverUrl}");
app.Run($"{serverUrl}"); app.Run($"{serverUrl}");
} }

View File

@ -154,15 +154,15 @@ namespace AuthApi.Services
else else
{ {
response.EC = ERROR_CODE.EC_USER_LOGIN_NOT_EXIST; response.EC = ERROR_CODE.EC_USER_LOGIN_NOT_EXIST;
Log4net.WriteLine($"{response.EC}", LogType.Error); LogXnet.WriteLine($"{response.EC}", LogXLabel.Error);
} }
await context.CloseTransactionAsync(transaction); await context.CloseTransactionAsync(transaction);
} }
} }
catch (Exception e) catch (Exception e)
{ {
Log4net.WriteLine($"Select User Transaction Error", LogType.Exception); LogXnet.WriteLine($"Select User Transaction Error", LogXLabel.Exception);
Log4net.WriteLine(e); LogXnet.WriteLine(e);
} }
} }
} }
@ -215,13 +215,13 @@ namespace AuthApi.Services
} }
//commit //commit
Log4net.WriteLine(findRefreshToken?.ToJson(), LogType.Debug); LogXnet.WriteLine($"{findRefreshToken?.ToJson()}", LogXLabel.Debug);
result = true; result = true;
} }
catch (Exception ex) catch (Exception ex)
{ {
Log4net.WriteLine(ex); LogXnet.WriteLine(ex);
} }
transactionResult = await context.CloseTransactionAsync(transaction); transactionResult = await context.CloseTransactionAsync(transaction);
@ -229,17 +229,17 @@ namespace AuthApi.Services
} }
else else
{ {
Log4net.WriteLine($"Not Exist User {loginModel.UserID}", LogType.Error); LogXnet.WriteLine($"Not Exist User {loginModel.UserID}", LogXLabel.Error);
} }
//db error //db error
if (transactionResult == false) if (transactionResult == false)
{ {
Log4net.WriteLine($"Transaction Error", LogType.Error); LogXnet.WriteLine($"Transaction Error", LogXLabel.Error);
} }
else else
{ {
Log4net.WriteLine($"Transaction Success", LogType.DB); LogXnet.WriteLine($"Transaction Success", LogXLabel.DB);
} }
} }
} }