C#에서 사용자 지정 로깅을 사용하는 방법

How to use Custom Logging in C#

This article was translated from English: Does it need improvement?
Translated
View the article in English

C#의 사용자 지정 로깅을 사용하면 애플리케이션별 이벤트 및 메시지를 캡처하는 맞춤형 로깅 시스템을 구현할 수 있습니다. IronPDF를 사용하면 LoggingModeCustom로 설정하고 로거 구현을 지정하여 모든 PDF 처리 로그를 사용자 지정 로거로 리디렉션할 수 있습니다. 이 기능을 사용하면 IronPDF의 상세 로깅 출력을 NLog, Serilog, log4net 또는 사용자 지정 솔루션 등 기존 로깅 인프라와 통합할 수 있습니다.

사용자 지정 로깅은 여러 구성 요소의 로그를 중앙 집중화하고, 사용자 지정 형식을 적용하고, 심각도 수준별로 필터링하거나, 파일, 데이터베이스 또는 모니터링 서비스와 같은 특정 대상으로 로그를 라우팅해야 할 때 유용합니다. IronPDF에 사용자 지정 로깅을 구현하면 애플리케이션에서 PDF 생성 및 처리 이벤트를 추적하는 방식을 완벽하게 제어할 수 있습니다.

빠른 시작: IronPDF를 사용하여 사용자 지정 로깅 구현

IronPDF를 사용하여 C#에서 사용자 지정 로깅을 시작해 보세요. 이 가이드에서는 LoggingModeCustom로 설정하고 이를 로거 클래스와 연결하는 방법을 보여줍니다. IronPDF 메시지를 사용자 지정 로거로 직접 전송하여 애플리케이션 로그를 모니터링하고 관리하세요. 설정은 간단하며 애플리케이션의 로깅 기능을 향상시켜 줍니다. IronPDF의 기능에 대한 포괄적인 개요는 빠른 시작 가이드를 참조하십시오.

Nuget Icon지금 바로 NuGet을 사용하여 PDF 만들기를 시작하세요.

  1. NuGet 패키지 관리자를 사용하여 IronPDF를 설치하세요.

    PM > Install-Package IronPdf

  2. 다음 코드 조각을 복사하여 실행하세요.

    IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.Custom;
    IronSoftware.Logger.CustomLogger = new MyCustomLogger();
  3. 실제 운영 환경에서 테스트할 수 있도록 배포하세요.

    지금 바로 무료 체험판을 통해 프로젝트에서 IronPDF를 사용해 보세요.
    arrow pointer


사용자 지정 로깅 예제를 어떻게 구현하나요?

사용자 지정 로깅을 사용하려면 LoggingMode 속성을 LoggingModes.Custom 으로 변경하십시오. 그런 다음 CustomLogger 속성에 사용자 지정 로거 클래스를 할당합니다. 이를 통해 다양한 로깅 프레임워크와의 통합에 유연성을 제공하고 애플리케이션 전체에서 일관된 로깅 패턴을 유지할 수 있습니다.

이 구현에는 최소한의 설정만 필요합니다. 설정이 완료되면 HTML을 PDF로 변환, PDF 조작 및 렌더링을 포함한 모든 IronPDF 작업은 사용자 지정 로거를 통해 로그 메시지를 자동으로 전송합니다. 이 통합을 통해 PDF 처리 작업에 대한 중요한 정보를 수집할 수 있습니다.

IronPDF에서 사용자 지정 로깅을 사용해야 하는 이유는 무엇입니까?

:path=/static-assets/pdf/content-code-examples/how-to/custom-logging-custom-logging.cs
IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.Custom;
IronSoftware.Logger.CustomLogger = new CustomLoggerClass("logging");
$vbLabelText   $csharpLabel

IronPDF 로그는 사용자 지정 로거 객체로 전달됩니다. 메시지 내용은 IronPDF 로거에 있는 내용과 동일합니다. 해당 데이터는 사용자 지정 로거로 전달됩니다. 사용자 정의 로거 구현은 메시지를 처리하는 방법을 결정합니다. 다음은 사용자 정의 로거 클래스의 예입니다.

사용자 지정 로깅은 운영 환경에 여러 가지 이점을 제공합니다.

  • 중앙 집중식 로그 관리 : IronPDF 로그를 기존 로깅 인프라와 통합합니다.
  • 향상된 디버깅 : 문제 해결을 위해 PDF 작업에 대한 자세한 정보를 캡처합니다.
  • 성능 모니터링 : 렌더링 시간 및 리소스 사용량을 추적합니다.
  • 오류 추적 : PDF 생성 오류를 자동으로 감지하고 보고합니다.
  • 규정 준수 : 규제 대상 산업 분야의 문서 생성에 대한 감사 추적 기록을 유지합니다.

비동기 처리가 필요한 애플리케이션의 경우, 사용자 지정 로깅을 통해 동시 PDF 작업량을 추적하고 잠재적인 병목 현상을 파악할 수 있습니다.

사용자 정의 로거 클래스는 어떤 모습일까요?

:path=/static-assets/pdf/content-code-examples/how-to/custom-logging-custom-logging-class.cs
public class CustomLoggerClass : ILogger
{
    private readonly string categoryName;

    public CustomLoggerClass(string categoryName)
    {
        this.categoryName = categoryName;
    }

    public IDisposable BeginScope<TState>(TState state)
    {
        return null;
    }

    public bool IsEnabled(LogLevel logLevel)
    {
        return true;
    }

    public void Log<TState>(LogLevel logLevel, EventId eventId, TState state, Exception exception, Func<TState, Exception, string> formatter)
    {
        if (!IsEnabled(logLevel))
        {
            return;
        }

        // Implement your custom logging logic here.
        string logMessage = formatter(state, exception);

        // You can use 'logLevel', 'eventId', 'categoryName', and 'logMessage' to log the message as needed.
        // For example, you can write it to a file, console, or another destination.

        // Example: Writing to the console
        Console.WriteLine($"[{logLevel}] [{categoryName}] - {logMessage}");
    }
}
$vbLabelText   $csharpLabel

이 구현은 표준 Microsoft.Extensions.Logging.ILogger 인터페이스를 따르므로 .NET 로깅 생태계와 호환됩니다. 로거 클래스에는 다음이 포함됩니다.

  • 범주 이름 : 로그 메시지의 출처를 식별하는 데 도움이 됩니다.
  • 로그 레벨 필터링 : 어떤 심각도 레벨을 기록할지 제어합니다.
  • 유연한 출력 : 로그를 원하는 대상(콘솔, 파일, 데이터베이스 등)으로 라우팅할 수 있습니다.
  • 예외 처리 : 예외 발생 시 적절한 형식으로 세부 정보를 기록합니다.
  • 상태 관리 : BeginScope를 사용한 구조화된 로깅 지원

고급 시나리오의 경우, 특히 복잡한 HTML 변환을 처리하거나 Chrome 렌더링 엔진을 사용할 때 로깅 출력에 영향을 미치는 렌더링 옵션을 살펴보세요.

사용자 지정 로깅 출력은 어떻게 표시되나요?

이 예시에서는 로그 메시지 앞에 추가 정보가 붙습니다.

Visual Studio 디버거 콘솔에 Chrome 클라이언트 초기화 및 라이브러리 로딩을 포함한 IronPdf 배포 로그가 표시됩니다.

콘솔 출력은 사용자 지정 로깅이 IronPDF의 내부 운영에 대한 자세한 정보를 제공하는 방법을 보여줍니다. 보시는 바는 다음과 같습니다.

  • 크롬 클라이언트 초기화 단계
  • 배포 후보 생성
  • 네이티브 라이브러리 로딩 시퀀스
  • 구성 요소 배포 성공 확인

이처럼 상세한 정보는 PDF 생성 문제를 디버깅 하거나 성능을 최적화할 때 매우 유용합니다. 구조화된 형식 덕분에 프로그램적으로 로그를 쉽게 구문 분석하거나 로그 분석 도구와 통합할 수 있습니다.

사용자 지정 로깅 구현을 위한 모범 사례

IronPDF를 사용하여 사용자 지정 로깅을 구현할 때 다음 모범 사례를 고려하십시오.

  1. 적절한 로그 레벨 사용 : 로그 저장 공간을 과도하게 차지하지 않으면서 적절한 상세 수준으로 로그를 캡처하도록 로거를 구성하십시오.
  2. 상황 정보 포함 : PDF 작업 간의 연관성을 파악하기 위해 요청 ID, 사용자 정보 또는 거래 세부 정보를 추가합니다.
  3. 민감한 데이터 처리 : 로거가 PDF 콘텐츠의 기밀 정보를 노출하지 않도록 하십시오.
  4. 성능 모니터링 : PDF 생성 시간을 추적하여 최적화 기회를 파악합니다.
  5. 알림 설정 : 심각한 오류 또는 성능 저하에 대한 알림을 구성합니다.

특히 라이선스 키를 사용 하는 경우, 실제 운영 환경에서는 적절한 로깅을 통해 원활한 운영과 신속한 문제 해결을 보장할 수 있습니다.

일반적인 로깅 문제 해결

사용자 지정 로깅에 문제가 발생하는 경우:

  • 로거가 ILogger 인터페이스를 올바르게 구현하는지 확인하십시오.
  • IronPDF 작업을 시작하기 전에 LoggingMode가 설정되어 있는지 확인하십시오.
  • 로거가 동시 작업에 대해 스레드 안전성을 확보하도록 하십시오. 파일이나 외부 시스템에 기록할 경우 로그 권한을 검토하십시오.

추가적인 문제 해결 자료는 문제 해결 가이드를 참조하거나 API 참조에서 로깅 속성 및 메서드에 대한 자세한 문서를 확인하세요.

당신이 할 수 있는 다른 일들을 알아볼 준비가 되셨나요? 추가 기능에 대한 자세한 내용 은 여기 튜토리얼 페이지를 참조하세요.

자주 묻는 질문

C#에서 사용자 지정 로깅이란 무엇이며 PDF 처리와 어떻게 연동되나요?

IronPDF의 C# 사용자 지정 로깅 기능을 사용하면 PDF 처리 이벤트 및 메시지를 캡처하는 맞춤형 로깅 시스템을 구현할 수 있습니다. LoggingMode를 Custom으로 설정하고 사용자 지정 로거 구현을 지정하면 IronPDF는 모든 PDF 생성 및 조작 로그를 사용자 지정 로거로 리디렉션하여 NLog, Serilog 또는 log4net과 같은 기존 로깅 인프라와 통합할 수 있습니다.

PDF 작업에 대한 사용자 지정 로깅을 활성화하려면 어떻게 해야 하나요?

IronPDF에서 사용자 지정 로깅을 활성화하려면 IronSoftware.Logger.LoggingMode를 LoggingModes.Custom으로 설정하고 사용자 지정 로거 클래스를 IronSoftware.Logger.CustomLogger에 할당하십시오. 설정이 완료되면 HTML을 PDF로 변환하거나 PDF를 조작하는 등 모든 IronPDF 작업에서 로그 메시지가 사용자 지정 로거를 통해 자동으로 전송됩니다.

PDF 생성에 사용자 지정 로깅을 구현하면 어떤 이점이 있습니까?

IronPDF의 사용자 지정 로깅 기능을 사용하면 PDF 처리 이벤트 추적 방식을 완벽하게 제어할 수 있습니다. 여러 구성 요소의 로그를 중앙 집중화하고, 사용자 지정 서식을 적용하고, 심각도 수준별로 필터링하고, 파일, 데이터베이스 또는 모니터링 서비스와 같은 특정 대상으로 로그를 전송하여 애플리케이션의 로깅 기능을 향상시킬 수 있습니다.

PDF 처리 로그를 기존 로깅 프레임워크와 통합할 수 있을까요?

네, IronPDF의 사용자 지정 로깅 기능은 NLog, Serilog, log4net 등 널리 사용되는 로깅 프레임워크 또는 기타 사용자 지정 로깅 솔루션과 원활하게 통합됩니다. 이를 통해 애플리케이션 전체에서 일관된 로깅 패턴을 유지하면서 PDF 처리 작업에 대한 중요한 정보를 수집할 수 있습니다.

사용자 지정 로깅을 구현하기 위한 최소한의 워크플로는 무엇입니까?

최소 워크플로는 다음 5단계로 구성됩니다. NuGet에서 IronPDF를 다운로드하고, LoggingMode를 LoggingModes.Custom으로 설정하고, CustomLogger를 사용자 지정 로거 객체에 할당하면 모든 로그 메시지가 사용자 지정 로거로 전달됩니다. 마지막으로 로그 메시지를 출력하여 IronPDF 작업 로그를 확인할 수 있습니다.

커티스 차우
기술 문서 작성자

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.

커티스는 개발 분야 외에도 사물 인터넷(IoT)에 깊은 관심을 가지고 있으며, 하드웨어와 소프트웨어를 통합하는 혁신적인 방법을 연구합니다. 여가 시간에는 게임을 즐기거나 디스코드 봇을 만들면서 기술에 대한 애정과 창의성을 결합합니다.

시작할 준비 되셨나요?
Nuget 다운로드 17,527,568 | 버전: 2026.2 방금 출시되었습니다