NLog는 다양한 .NET 플랫폼을 위한 유연한 무료 로깅 플랫폼입니다. NLog를 사용하면 데이터베이스, 파일, 콘솔 등 여러 대상에 쉽게 로깅을 할 수 있습니다.
*Visual Studio 2022, .NET 6.0, console Project
솔루션 탐색기 -> 프로젝트 -> 우 클릭 > NuGet 패키지 관리(N)-> 아래 항목 설치
1. NLog.Extensions.Logging
2. Microsoft.Extensions.DependencyInjection
3. Microsoft.Extensions.Configuration.Json
응용 프로그램 프로젝트의 루트에 nlog.config(모두 소문자) 파일을 만듭니다
<?xml version="1.0" encoding="utf-8" ?>
<!-- XSD manual extracted from package NLog.Schema: https://www.nuget.org/packages/NLog.Schema-->
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xsi:schemaLocation="NLog NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
autoReload="true"
internalLogFile="c:\temp\console-example-internal.log"
internalLogLevel="Info" >
<!-- the targets to write to -->
<targets>
<!-- write logs to file -->
<target xsi:type="File" name="logfile" fileName="{basedir}/logs/console-example.log"
layout="${longdate}|${level}|${message} |${all-event-properties} ${exception:format=tostring}" />
<target xsi:type="Console" name="logconsole"
layout="${longdate}|${level}|${message} |${all-event-properties} ${exception:format=tostring}" />
</targets>
<!-- rules to map from logger name to target -->
<rules>
<logger name="*" minlevel="Trace" writeTo="logfile,logconsole" />
</rules>
</nlog>
프로젝트 파일에 다음과 같은 속성을 추가합니다.
<ItemGroup>
<None Update="nlog.config" CopyToOutputDirectory="Always" />
</ItemGroup>
//Program.cs
using Microsoft.Extensions.Logging;
using NLog.Extensions.Logging;
var logger = LoggerFactory.Create(builder => builder.AddNLog()).CreateLogger<Program>();
//LoggerFactory.Create() : 새 ILoggerFactory 인스턴스를 만듭니다.
//CreateLogger() : 새 ILogger 인스턴스를 만듭니다.
logger.LogInformation("Program has started.");
Console.ReadKey();
[.NET] Json 직렬화 및 역직렬화 (0) | 2022.10.10 |
---|---|
[.NET] .NET 통합: .NET 5에 대한 Microsoft의 계획 (1) | 2022.10.08 |
[.NET] 일정 시간이 지난 파일 삭제 (0) | 2022.09.22 |
[.NET] SQL Server SqlConnection 생성 (0) | 2022.09.16 |
[.NET] System.Data.SqlClient 참조하기 (0) | 2022.09.14 |
댓글 영역