Benutzerdefiniertes Logging in C# verwenden

Benutzerdefinierte Protokollierung in C#

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

Mit Custom Logging in C# können Sie ein maßgeschneidertes Logging-System implementieren, das anwendungsspezifische Ereignisse und Nachrichten erfasst. Mit IronPDF können Sie alle PDF-Verarbeitungsprotokolle zu Ihrem benutzerdefinierten Logger umleiten, indem Sie LoggingMode auf Custom setzen und Ihre Logger-Implementierung zuweisen. Mit dieser Funktion können Sie die detaillierte Protokollierungsausgabe von IronPDF in Ihre bestehende Protokollierungsinfrastruktur integrieren, unabhängig davon, ob Sie NLog, Serilog, log4net oder eine kundenspezifische Lösung verwenden.

Benutzerdefinierte Protokollierung ist nützlich, wenn Sie Protokolle von mehreren Komponenten zentralisieren, benutzerdefinierte Formatierungen anwenden, nach Schweregrad filtern oder Protokolle an bestimmte Ziele wie Dateien, Datenbanken oder Überwachungsdienste weiterleiten müssen. Durch die Implementierung einer benutzerdefinierten Protokollierung mit IronPDF erhalten Sie die vollständige Kontrolle darüber, wie PDF-Erzeugungs- und Verarbeitungsereignisse in Ihrer Anwendung verfolgt werden.

als-Überschrift:2(Schnellstart: Implementieren von benutzerdefiniertem Logging mit IronPDF)

Beginnen Sie mit der benutzerdefinierten Protokollierung in C# mit IronPDF. Diese Anleitung zeigt, wie Sie den LoggingMode auf Custom setzen und mit Ihrer Logger-Klasse verknüpfen. Leiten Sie IronPDF-Nachrichten an Ihren benutzerdefinierten Logger, um Anwendungsprotokolle zu überwachen und zu verwalten. Die Einrichtung ist einfach und verbessert die Protokollierungsfunktionen Ihrer Anwendung. Einen umfassenden Überblick über die Funktionen von IronPDF finden Sie in unserem Quickstart Guide.

Nuget IconLegen Sie jetzt mit NuGet los, um PDFs zu erstellen:

  1. Installieren Sie IronPDF mit dem NuGet-Paketmanager.

    PM > Install-Package IronPdf

  2. Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.Custom;
    IronSoftware.Logger.CustomLogger = new MyCustomLogger();
  3. Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute mit der Nutzung von IronPDF in Ihrem Projekt – mit einer kostenlosen Testversion.
    arrow pointer


Wie implementiere ich ein eigenes Logging-Beispiel?

Um die benutzerdefinierte Protokollierung zu verwenden, ändern Sie die Eigenschaft LoggingMode auf LoggingModes.Custom. Weisen Sie dann die Eigenschaft CustomLogger Ihrer benutzerdefinierten Logger-Klasse zu. Dies bietet Flexibilität für die Integration mit verschiedenen Logging-Frameworks und sorgt für konsistente Logging-Muster in Ihrer Anwendung.

Die Implementierung erfordert eine minimale Einrichtung. Einmal konfiguriert, senden alle IronPDF-Vorgänge - einschließlich der Konvertierung von HTML in PDF, der PDF-Bearbeitung und des Renderings - ihre Protokollmeldungen automatisch über Ihren benutzerdefinierten Logger. Diese Integration stellt sicher, dass Sie wichtige Informationen über PDF-Verarbeitungsvorgänge erfassen.

Warum sollte ich Custom Logging mit IronPDF verwenden?

: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

Die IronPDF-Protokolle werden an das benutzerdefinierte Logger-Objekt weitergeleitet. Die Meldungen bleiben identisch mit denen des IronPDF-Loggers; sie werden an den benutzerdefinierten Logger weitergeleitet. Die benutzerdefinierte Logger-Implementierung bestimmt, wie die Nachrichten zu behandeln sind. Betrachten Sie das folgende Beispiel einer benutzerdefinierten Logger-Klasse.

Die benutzerdefinierte Protokollierung bietet mehrere Vorteile für Produktionsanwendungen:

  • Zentrales Log Management: Integrieren Sie IronPDF Logs in Ihre bestehende Logging-Infrastruktur
  • Verbessertes Debugging: Erfassen detaillierter Informationen über PDF-Vorgänge zur Fehlersuche
  • Performance Monitoring: Rendering-Zeiten und Ressourcennutzung verfolgen
  • Fehlerverfolgung: Automatisches Erfassen und Melden von Fehlern bei der PDF-Generierung
  • Einhaltung von Vorschriften: Aufrechterhaltung von Prüfpfaden für die Dokumentenerstellung in regulierten Branchen

Bei Anwendungen, die eine asynchrone Verarbeitung erfordern, hilft die benutzerdefinierte Protokollierung, gleichzeitige PDF-Vorgänge zu verfolgen und potenzielle Engpässe zu erkennen.

Wie sieht eine benutzerdefinierte Logger-Klasse aus?

: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

Diese Implementierung folgt der Standardschnittstelle Microsoft.Extensions.Logging.ILogger und ist somit mit dem .NET-Logging-Ökosystem kompatibel. Die Logger-Klasse umfasst:

  • Kategoriename: Hilft bei der Identifizierung der Quelle von Protokollmeldungen
  • Protokollstufen-Filterung: Steuerung der zu erfassenden Schweregrade
  • Flexible Ausgabe: Leiten Sie Protokolle an ein beliebiges Ziel (Konsole, Datei, Datenbank usw.)
  • Ausnahmebehandlung: Richtiges Formatieren und Protokollieren von Ausnahmedetails
  • State Management: Unterstützung für strukturiertes Logging mit BeginScope

Für fortgeschrittene Szenarien sollten Sie sich mit den Rendering-Optionen befassen, die sich auf die Protokollierung auswirken, insbesondere bei komplexen HTML-Konvertierungen oder bei der Arbeit mit der Chrome Rendering Engine.

Wie sieht die benutzerdefinierte Logging-Ausgabe aus?

In diesem Beispiel werden den Protokollmeldungen zusätzliche Informationen vorangestellt.

Visual Studio Debugger-Konsole zeigt IronPdf-Bereitstellungsprotokolle mit Chrome-Client-Initialisierung und Bibliotheksladung

Die Konsolenausgabe zeigt, wie die benutzerdefinierte Protokollierung detaillierte Einblicke in die internen Abläufe von IronPDF bietet. Sie können es sehen:

  • Initialisierungsschritte des Chrome-Clients
  • Erstellung von Einführungskandidaten
  • Sequenzen zum Laden nativer Bibliotheken
  • Bestätigungen für die erfolgreiche Bereitstellung von Komponenten

Diese Detailgenauigkeit ist von unschätzbarem Wert, wenn es darum geht, Probleme bei der PDF-Erzeugung zu beheben oder die Leistung zu optimieren. Das strukturierte Format macht es einfach, Protokolle programmatisch zu analysieren oder in Protokollanalysetools zu integrieren.

Best Practices für die Implementierung einer benutzerdefinierten Protokollierung

Beachten Sie bei der Implementierung der benutzerdefinierten Protokollierung mit IronPDF die folgenden Best Practices:

  1. Verwenden Sie geeignete Protokollierungsebenen: Konfigurieren Sie Ihren Logger so, dass er die richtige Detailstufe erfasst, ohne den Protokollspeicher zu überlasten
  2. Kontextuelle Informationen einbeziehen: Fügen Sie Anfrage-IDs, Benutzerinformationen oder Transaktionsdetails hinzu, um PDF-Vorgänge zu korrelieren
  3. Handhabung sensibler Daten: Stellen Sie sicher, dass Ihr Logger keine vertraulichen Informationen aus PDF-Inhalten preisgibt
  4. Leistungsüberwachung: Verfolgen Sie die PDF-Erzeugungszeiten, um Optimierungsmöglichkeiten zu ermitteln
  5. Warnungen einrichten: Konfigurieren Sie Benachrichtigungen für kritische Fehler oder Leistungseinbußen

Bei Produktionseinsätzen, insbesondere bei der Verwendung von Lizenzschlüsseln, sorgt eine ordnungsgemäße Protokollierung für reibungslose Abläufe und eine schnelle Problemlösung.

Fehlerbehebung bei allgemeinen Protokollierungsproblemen

Wenn Sie Probleme mit der benutzerdefinierten Protokollierung haben:

  • Überprüfen Sie, ob Ihr Logger die ILogger-Schnittstelle korrekt implementiert
  • Prüfen Sie, ob LoggingMode vor jeder IronPDF-Operation gesetzt ist
  • Sicherstellen, dass Ihr Logger thread-sicher für gleichzeitige Operationen ist
  • Überprüfen Sie die Log-Berechtigungen, wenn Sie in Dateien oder externe Systeme schreiben

Weitere Ressourcen zur Fehlerbehebung finden Sie in unserem Leitfaden zur Fehlerbehebung oder in der API-Referenz mit einer ausführlichen Dokumentation zu den Eigenschaften und Methoden der Protokollierung.

Bereit zu sehen, was Sie sonst noch tun können? Sehen Sie sich hier unsere Tutorial-Seite an: Zusätzliche Funktionen

Häufig gestellte Fragen

Was ist Custom Logging in C# und wie funktioniert es mit der PDF-Verarbeitung?

Mit dem Custom Logging in C# mit IronPDF können Sie ein maßgeschneidertes Logging-System implementieren, das Ereignisse und Meldungen der PDF-Verarbeitung erfasst. Indem Sie LoggingMode auf Custom setzen und Ihre Logger-Implementierung zuweisen, leitet IronPDF alle PDF-Erzeugungs- und -Bearbeitungsprotokolle an Ihren benutzerdefinierten Logger weiter und ermöglicht so die Integration in eine bestehende Logging-Infrastruktur wie NLog, Serilog oder log4net.

Wie aktiviere ich die benutzerdefinierte Protokollierung für PDF-Vorgänge?

Um die benutzerdefinierte Protokollierung mit IronPDF zu aktivieren, setzen Sie IronSoftware.Logger.LoggingMode auf LoggingModes.Custom und weisen Sie Ihre benutzerdefinierte Logger-Klasse IronSoftware.Logger.CustomLogger zu. Nach der Konfiguration werden alle IronPDF-Vorgänge, einschließlich der HTML-zu-PDF-Konvertierung und der PDF-Bearbeitung, automatisch über den benutzerdefinierten Logger protokolliert.

Welche Vorteile bietet die Implementierung einer benutzerdefinierten Protokollierung für die PDF-Generierung?

Die benutzerdefinierte Protokollierung mit IronPDF bietet vollständige Kontrolle darüber, wie PDF-Verarbeitungsereignisse verfolgt werden. Sie können Protokolle aus mehreren Komponenten zentralisieren, benutzerdefinierte Formatierungen anwenden, nach Schweregrad filtern und Protokolle an bestimmte Ziele wie Dateien, Datenbanken oder Überwachungsdienste weiterleiten, um die Protokollierungsfunktionen Ihrer Anwendung zu verbessern.

Kann ich PDF-Verarbeitungsprotokolle in bestehende Logging-Frameworks integrieren?

Ja, die benutzerdefinierte Logging-Funktion von IronPDF lässt sich nahtlos in gängige Logging-Frameworks wie NLog, Serilog, log4net oder jede andere benutzerdefinierte Logging-Lösung integrieren. Dies gewährleistet konsistente Logging-Muster in Ihrer gesamten Anwendung und erfasst gleichzeitig wichtige Informationen über PDF-Verarbeitungsvorgänge.

Wie sieht der minimale Arbeitsablauf für die Implementierung einer benutzerdefinierten Protokollierung aus?

Der minimale Arbeitsablauf umfasst 5 Schritte: Laden Sie IronPDF von NuGet herunter, setzen Sie LoggingMode auf LoggingModes.Custom, weisen Sie CustomLogger Ihrem benutzerdefinierten Logger-Objekt zu, und alle Protokollmeldungen werden an Ihren benutzerdefinierten Logger weitergeleitet. Schließlich geben Sie die Protokollmeldungen aus, um die Protokolle der IronPDF-Vorgänge anzuzeigen.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 17,012,929 | Version: 2025.12 gerade veröffentlicht