IRONSOFTWAREHOME
개발자 업데이트

Microsoft 로깅 C# (개발자를 위한 작동 원리)

제이콥 멜러, 팀 아이언 최고기술책임자
Jacob Mellor
Updated: 2026년 7월 5일

로깅은 애플리케이션 실행 중 정보를 포착하고 경고, 오류 및 관련 데이터를 캡처하는 C#의 필수 기술입니다. 이는 개발자가 프로그램의 작동 방식을 모니터링하고, 문제를 해결하며, 다양한 상황에서의 애플리케이션 기능을 이해하는 데 도움을 줍니다. C#은 로깅 작업을 쉽게 하기 위한 몇 가지 로깅 프레임워크와 패키지를 제공합니다. Microsoft.Extensions.Logging은 .NET Core 애플리케이션에서 가장 널리 사용되는 로깅 프레임워크 중 하나입니다. 이 Microsoft.Extensions.Logging NuGet 패키지는 .NET Core에서 여러 확장 메서드를 사용할 수 있게 하여 다양한 로그 레벨을 작성하는 데 도움을 줍니다. 이 기사에서는 MS 로깅에 대해 더 논의할 것입니다.

MS 로그 설정 방법

  1. 새 Visual Studio 프로젝트를 생성하십시오.
  2. NuGet의 Microsoft.Extensions.Logging 패키지 페이지에서 Microsoft.Extensions.Logging 라이브러리를 설치합니다.
  3. 콘솔에 Logger 인터페이스를 주입합니다.
  4. 로깅 출력을 구성하십시오.
  5. 다양한 레벨에서 로그를 작성하십시오.
  6. 코드를 실행하십시오.

1단계: 새 Visual Studio 프로젝트 생성

시작하려면 Visual Studio에서 새 프로젝트를 생성하십시오.

2단계: Microsoft.Extensions.Logging 라이브러리 설치

NuGet의 Microsoft.Extensions.Logging 패키지 페이지를 통해 Microsoft.Extensions.Logging 라이브러리를 설치합니다. 이 라이브러리는 .NET Core 애플리케이션에서 로깅을 위한 필요한 클래스와 메서드를 제공합니다.

3단계: 콘솔에 Logger 인터페이스 주입

로깅 기능을 사용하려면 콘솔 애플리케이션에 ILogger 인터페이스의 인스턴스를 주입해야 합니다. 이것은 로깅 팩토리를 사용하여 수행할 수 있습니다.

using Microsoft.Extensions.Logging;

// Create a logger for the application
ILogger<Program> logger = LoggerFactory.Create(builder =>
{
    builder.AddConsole(); // Adding console logging
}).CreateLogger<Program>();

4단계: 로깅 출력 구성

로그가 출력되는 방식을 구성하십시오. 이것은 로거 빌더에 하나 이상의 로깅 공급자를 추가하여 수행할 수 있습니다. 가장 일반적인 공급자는 로그를 콘솔에 출력하는 콘솔 로거입니다.

builder.AddConsole(options =>
{
    options.TimestampFormat = "[HH:mm:ss] "; // Setting the timestamp format for logs
});

5단계: 다양한 레벨에서 로그 작성

이제 로거 객체를 사용하여 다양한 레벨에서 로그를 작성할 수 있습니다. 사용할 수 있는 로깅 메서드는 LogDebug(), LogInformation(), LogWarning(), LogError() 및 LogCritical()입니다.

logger.LogDebug("This is a debug message");
logger.LogInformation("This is an information message");
logger.LogWarning("This is a warning message");
logger.LogError("This is an error message");
logger.LogCritical("This is a critical message");

6단계: 코드 실행

마지막으로 코드를 실행하고 구성된 설정에 따라 출력되는 로그를 관찰하십시오.

그게 다예요! C# 애플리케이션에서 MS 로깅을 성공적으로 설정하고 사용하였습니다.

MS 로깅 설치

MS 로깅을 설치하려면 다음 단계를 따르십시오:

  1. Visual Studio를 실행합니다.

  2. 도구 > NuGet 패키지 관리자 > 패키지 관리자 콘솔로 이동하십시오.

  3. 패키지 관리자 콘솔에서 다음 명령을 실행하십시오:

    Install-Package Microsoft.Extensions.Logging
    PowerShell
  4. 명령을 실행하려면 Enter 키를 누르십시오. 이 작업은 프로젝트에 Microsoft.Extensions.Logging 패키지를 다운로드하고 설치합니다.

로그 레벨

C#의 Microsoft.Extensions.Logging 프레임워크에는 여러 로깅 레벨이 제공되며, 개발자가 로그 메시지를 중요도와 심각도에 따라 분류하고 정렬할 수 있습니다. 이러한 레벨은 다양한 메시지 타입을 구별하고, 로그의 장광설을 조절하는 데 도움을 주기 위해 자주 사용됩니다.

기본적으로 Microsoft.Extensions.Logging에서 제공하는 로깅 레벨은 다음과 같습니다:

  • Trace: 가장 철저한 수준으로, 프로그램의 내적 작동에 대한 깊은 이해를 제공하는 매우 상세한 데이터를 위해 자주 사용됩니다.
  • Debug: 개발 및 디버깅 단계에서 유용한 디버깅 정보로, 프로덕션 환경에서는 종종 필요하지 않습니다.
  • Information: 애플리케이션이 정상적으로 작동하는 방법에 대한 세부 정보를 제공합니다. 일반적으로 프로그램의 정상적인 작동은 이러한 로그를 사용하여 모니터링됩니다.
  • Warning: 잠재적인 문제나 미래에 주의를 기울여야 할 일이 있을 수 있음을 나타냅니다. 프로그램이 충돌하지 않더라도 문제가 발생할 수 있는 비정상적이거나 예기치 않은 상황에 사용됩니다.
  • Error: 즉시 수정해야 하는 심각한 문제나 실수를 나타냅니다. 일반적으로 이는 애플리케이션의 작동에 영향을 미치는 문제를 기록하는 데 사용됩니다.
  • Critical: 가장 심각한 상태로, 즉시 조치해야 하는 심각한 문제를 기록하는 데 사용됩니다. 이는 심각한 문제나 프로그램 충돌을 일으킬 수 있습니다.

각 로그 레벨은 특정 목적을 제공하며, 개발자가 로그 프레임워크가 출력하는 데이터 양을 관리할 수 있는 능력을 제공합니다. 개발자는 기록된 데이터의 중요성과 중요도에 따라 메시지 기록에 대해 적절한 레벨을 선택할 수 있습니다.

C# 로그 구성

다음은 Microsoft.Extensions.Logging를 사용하여 로깅을 구성하는 기본 예입니다:

using Microsoft.Extensions.Logging;
using System;

class Program
{
    // Create a LoggerFactory instance
    private static readonly ILoggerFactory LoggerFactory = LoggerFactory.Create(builder =>
    {
        // Add console logger
        builder.AddConsole();
        // You can add other logging providers here (e.g., AddDebug, AddFile, etc.)
    });

    // Create a logger
    private static readonly ILogger Logger = LoggerFactory.CreateLogger<Program>();

    static void Main(string[] args)
    {
        // Example log messages
        Logger.LogInformation("Information log");
        Logger.LogWarning("Warning log");
        Logger.LogError("Error log");

        try
        {
            // Simulate an exception
            throw new Exception("Exception occurred");
        }
        catch (Exception ex)
        {
            // Log exception details
            Logger.LogError(ex, "Exception log");
        }

        Console.ReadKey(); // Wait for a key press before closing the application
    }
}

이 예제에서는 콘솔 로거를 로그 구성에 추가하여, 로그를 콘솔에 기록합니다. 그러나 Microsoft.Extensions.Logging는 로그를 파일, 데이터베이스에 기록하거나 다른 로깅 프레임워크와 연결하는 다양한 로깅 공급자를 제공합니다. 또한, 특정 요구사항에 따라 로그를 형식화할 수 있는 커스텀 로그 제공자를 만들 수 있습니다.

추가 로그 제공자 추가

관련 메서드들을 Create() 함수 내에서 체이닝하여 추가 로깅 소스를 추가할 수 있습니다. 예를 들어:

  • 디버거 출력 로깅 공급자를 추가하려면 builder.AddDebug()를 사용하십시오.
  • 파일 로깅 공급자를 추가하려면 builder.AddFile("log.txt")를 사용하십시오.

IronPDF에서의 MSLogging

IronPDF는 HTML to PDF 변환을 뛰어나게 수행하여 원본 레이아웃과 스타일을 정확히 보존합니다. 보고서, 송장 및 설명서와 같은 웹 기반 콘텐츠에서 PDF를 생성하는 데 완벽합니다. HTML 파일, URL 및 원시 HTML 문자열에 대한 지원으로 IronPDF는 고품질의 PDF 문서를 쉽게 생성합니다.

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}

IronPDF에서 로깅을 활성화하려면 IronPDF의 기본 제공 로깅 기능과 함께 Microsoft.Extensions.Logging 프레임워크를 사용할 수 있습니다. 다음은 IronPDF에서 로그를 설정하는 예제입니다:

using Microsoft.Extensions.Logging;
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        ILoggerFactory loggerFactory = LoggerFactory.Create(builder =>
        {
            builder
                .AddConsole()
                .AddDebug();
        });

        ILogger<Program> logger = loggerFactory.CreateLogger<Program>();

        // Enable logging in IronPDF
        Logger.Log = new LoggerImplementation(logger);

        // Use IronPDF and perform operations
        // ...

        // Example of logging an error in IronPDF
        Logger.Log.Error("An error occurred while processing the PDF");

        // Example of logging a warning in IronPDF
        Logger.Log.Warning("This is a warning message");

        // Example of logging an information message in IronPDF
        Logger.Log.Information("This is an information message");

        // ...

        // Close and dispose resources
        // ...

        // Flush the log messages
        loggerFactory.Dispose();
    }
}

이 예제에서는 Microsoft.Extensions.Logging 프레임워크에서 LoggerFactory의 인스턴스를 생성합니다. 그 후 Program 클래스용 로거를 팩토리에서 생성합니다.

IronPDF에서 로깅을 활성화하려면 loggerFactory에서 로거를 받는 LoggerImplementation 인스턴스로 정적 Logger.Log 속성을 설정합니다. 이 구성으로 IronPDF 내에서 메시지를 로그할 수 있는 Logger.Log 메서드를 사용할 수 있습니다.

IronPDF로 필요한 작업을 수행한 후 리소스를 닫고 폐기한 다음, loggerFactory를 폐기하여 로그 메시지를 플러시할 수 있습니다.

참고: Microsoft.Extensions.Logging 및 IronPDF에 필요한 종속성과 패키지가 설치되어 있는지 확인하십시오.

IronPDF를 설치하세요

IronPDF 라이브러리를 설치하려면 다음 단계를 따르십시오:

  1. Visual Studio에서 패키지 관리자 콘솔을 엽니다.
  2. NuGet을 사용하여 IronPDF 라이브러리를 설치하기 위해 다음 명령을 입력합니다:

PM > Install-Package IronPdf

대안으로, .NET CLI를 사용하여 터미널에서 다음 명령을 실행할 수 있습니다:

PM > Install-Package IronPdf

  1. 명령을 실행하기 위해 Enter를 누릅니다. 이 작업은 IronPDF 패키지를 당신의 프로젝트에 다운로드하고 설치할 것입니다.

또한 NuGet 패키지 관리자 GUI를 사용하여 IronPDF 라이브러리를 설치할 수 있습니다. 단순히 Browser 탭에서 "IronPDF" 패키지를 검색하고, 목록에서 원하는 패키지를 선택하여 IronPDF의 최신 버전을 설치하십시오.

설치가 완료되면 프로젝트에서 IronPDF 라이브러리를 사용하기 시작할 수 있습니다.

IronPDF를 사용한 MS 로그

2022년 1월 기준, IronPDF는 Microsoft.Extensions.Logging와 직접 상호작용하지 않으며 기본적으로 지원되지 않습니다. IronPDF는 주로 C# 프로그램에서 PDF를 생성하고 수정하는 도구로 사용됩니다.

그러나 여전히 Microsoft.Extensions를 사용하여 로그를 통합할 수 있습니다. IronPDF와 함께 C# 프로그램에 로그를 통합하여 PDF 제작, 애플리케이션 워크플로우, 또는 IronPDF 사용 시 발생하는 문제와 관련된 이벤트를 관리하고 기록할 수 있습니다.

다음은 IronPDF와 로그를 통합하기 위해 Microsoft.Extensions를 사용하는 방법에 대한 예제입니다:

using Microsoft.Extensions.Logging;
using IronPdf;
using System;

class Program
{
    private static readonly ILoggerFactory LoggerFactory = LoggerFactory.Create(builder =>
    {
        builder.AddConsole(); // Add other logging providers as needed
    });

    private static readonly ILogger Logger = LoggerFactory.CreateLogger<Program>();

    static void Main(string[] args)
    {
        try
        {
            // Your IronPDF code for PDF generation or manipulation
            var Renderer = new IronPdf.HtmlToPdf();
            var PDF = Renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");
            PDF.SaveAs("Output.pdf");
            Logger.LogInformation("PDF created successfully.");
        }
        catch (Exception ex)
        {
            Logger.LogError(ex, "An error occurred while generating the PDF.");
        }

        Console.ReadKey(); // Wait for a key press before closing the application
    }
}

이 샘플은 IronPDF를 사용하는 C# 애플리케이션 내에서 Microsoft.Extensions.Logging을 설정하는 간단한 방법을 보여줍니다. 로그 메시지는 PDF 생성의 성공을 기록하고 발생할 수 있는 예외를 기록하기 위해 생성됩니다.

애플리케이션의 특정 요구와 IronPDF가 PDF 생성 또는 수정에 사용되는 시나리오에 따라 로깅 수준, 오류 처리 및 메시지를 사용자 정의해야 합니다. 로깅 수준을 사용하여 다양한 유형의 로그 메시지를 적절하게 구분하면 효과적인 디버깅 및 모니터링에 유용할 수 있습니다.

IronPDF에 대해 더 알고 싶다면 IronPDF 홈페이지를 방문해 주세요.

결론

결론적으로, Microsoft.Extensions.Logging의 통합은 C# 개발자가 로깅 작업을 효과적으로 처리할 수 있게 합니다. IronPDF는 포괄적인 로깅 기능을 제공하여 애플리케이션 이벤트, 실패 및 중요한 데이터의 철저한 기록, 분석 및 보고가 가능합니다. 이는 애플리케이션의 신뢰성, 유지보수성 및 디버깅을 강화합니다.

IronPDF는 $999으로 가격이 책정된 Lite 번들을 포함하여 다양한 소프트웨어 제품을 제공합니다. 이 번들에는 영구 라이선스, 업그레이드 옵션, 1년의 소프트웨어 유지보수, 30일 환불 보장이 포함됩니다. 워터마크가 있는 체험판 기간 동안 IronPDF의 기능을 탐색할 수 있습니다. Iron Software에서 제공하는 소프트웨어 제품에 대해 더 알고 싶다면 Iron Software의 공식 웹사이트를 방문해 주세요.

제이콥 멜러, 팀 아이언 최고기술책임자
최고기술책임자

제이콥 멜러는 Iron Software의 최고 기술 책임자(CTO)이자 C# PDF 기술을 개척한 선구적인 엔지니어입니다. Iron Software의 핵심 코드베이스를 최초로 개발한 그는 창립 초기부터 회사의 제품 아키텍처를 설계해 왔으며, CEO인 캐머런 리밍턴과 함께 회사를 NASA, 테슬라, 그리고 전 세계 정부 기관에 서비스를 제공하는 50명 이상의 직원을 보유한 기업으로 성장시켰습니다.

...
더 읽어보기

관련 기사

Key in blue circle

무료 30일 체험 키를 즉시 받으세요.

Your trial license will be sent to your email address

제한 없음. 100% 무제한 이용. 신용카드 불필요.

bullet_checked신용카드나 계정 생성은 필요하지 않습니다.제한 없음. 100% 무제한 이용. 신용카드 불필요.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
무료 라이브 데모를 예약하세요
Booking Badge

전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.

Iron Software의 고객 로고
부담 없는 무료 상담을 받아보세요
고객님의 정보는 항상 비밀로 유지됩니다.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.
지금 바로 30일 무료 체험판 키를 받으세요.
신용카드나 계정 생성은 필요하지 않습니다.
PDF용 C# NuGet 라이브러리
NuGet을 사용하여 설치하세요

버전: 2026.10

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 솔루션 탐색기에서 참조를 마우스 오른쪽 버튼으로 클릭하고 NuGet 패키지 관리를 선택합니다.
  2. 찾아보기를 선택하고 "IronPDF"를 검색하세요.
  3. 패키지를 선택하고 설치하세요
C# PDF DLL
DLL 다운로드

버전: 2026.10

또는 여기에서 Windows 설치 프로그램을 다운로드하십시오.

  1. IronPDF를 다운로드하고 솔루션 디렉터리 내의 ~/Libs와 같은 위치에 압축을 푸세요.
  2. Visual Studio 솔루션 탐색기에서 참조를 마우스 오른쪽 버튼으로 클릭합니다. 찾아보기를 선택하고 "IronPDF.dll"을 선택합니다.

라이선스 가격은 999달러 부터 시작합니다.