IRONSOFTWAREHOME
ENTWICKLER-UPDATES

C# Logging (Funktionsweise für Entwickler)

Jacob Mellor, Chief Technology Officer @ Team Iron
Jacob Mellor
Updated: 28. Juni 2026

Logging ist ein entscheidender Teil der Softwareentwicklung, insbesondere in Sprachen wie C#. Es hilft Entwicklern, Ereignisse zu verfolgen, die während der Ausführung eines Programms auftreten, was es einfacher macht, sein Verhalten zu verstehen und Probleme zu diagnostizieren. Dieser Leitfaden behandelt alle Aspekte des C#-Loggings und IronPDF für erweiterte PDF-Manipulationsfunktionen, von grundlegenden Konzepten bis hin zu fortgeschrittenen Logging-Konfigurationen und Tools. Es bietet ein umfassendes Verständnis und Kontrolle über die Logging-Konfiguration in Ihren Anwendungen.

Understanding Logging in C#

Im Wesentlichen bedeutet Logging in C#, Informationen über die Software während ihres Betriebs aufzuzeichnen. Diese Aufzeichnungen, oder Lognachrichten, werden in Logdateien oder anderen Medien gespeichert und können Daten wie Fehlermeldungen, Informationen über den Zustand der Software oder Debug-Nachrichten enthalten. Der Zweck des Loggings besteht darin, eine Möglichkeit zu bieten, Informationen über den Betrieb der Anwendung in einem beständigen Format festzuhalten. Diese Informationen sind von unschätzbarem Wert zum Debuggen von Problemen, Überwachen der Softwareleistung und Sicherstellen, dass sich die Anwendung wie erwartet verhält. Dazu gehören Konfigurationsdatei, Logging-API, Logging-Konfiguration, strukturierte Logs und Log-Ausnahmen.

Schreiben von Log-Meldungen

Um mit dem Logging in C# zu beginnen, müssen Entwickler Lognachrichten innerhalb ihrer Anwendung schreiben. Dies erfolgt durch ein Logging-Framework oder eine API. In C# ist eine beliebte Wahl Microsofts ILogger-Schnittstelle, die im Microsoft.Extensions.Logging-Namensraum verfügbar ist. Diese Schnittstelle bietet eine einfache Möglichkeit, Daten auf verschiedenen Wichtigkeitsebenen zu protokollieren, die als Loglevel bekannt sind. Diese Ebenen, darunter Information, Debug und Error, helfen beim Kategorisieren und Filtern der Logausgabe basierend auf der Schwere der aufgezeichneten Nachrichten.

using Microsoft.Extensions.Logging;

public class Program
{
    static void Main(string[] args)
    {
        // Create a logger instance with console output
        ILogger logger = LoggerFactory.Create(builder => 
        {
            builder.AddConsole(); // Add console as a logging target
        }).CreateLogger<Program>();

        // Log messages with different levels of severity
        logger.LogInformation("This is an information log message");
        logger.LogError("This is an error log message");
    }
}

Im obigen Beispiel ist das ILogger-Objekt namens logger so konfiguriert, dass Lognachrichten an die Konsole ausgegeben werden. Diese Einrichtung ist einfach, aber grundlegend um Ihnen zu helfen, zu verstehen, wie Lognachrichten generiert und angezeigt werden.

C#-Protokollierung (Wie es für Entwickler funktioniert): Abbildung 1 - Beispiel für Konsolenausgabe mit Protokollnachrichten

Log-Dateien und Anbieter

In einer realen Anwendung müssen Lognachrichten oft in einer Datei oder einem anderen Speichersystem zur späteren Überprüfung gespeichert werden. An dieser Stelle kommen Logging-Anbieter ins Spiel. Anbieter sind Komponenten des Logging-Frameworks, die die Ausgabe von Logdaten an verschiedene Ziele wie Dateien, Datenbanken oder externe Dienste verwalten.

Um zum Beispiel einen Logger zu konfigurieren, um Nachrichten in eine Datei zu schreiben, könnte man einen dateibasierten Anbieter wie FileLoggerProvider verwenden. Dies erfordert die Änderung der Konfigurationsdatei der Anwendung (oft appsettings.json in .NET-Anwendungen), um Details wie den Logdateipfad und das minimale Loglevel anzugeben.

{
  "Logging": {
    "LogLevel": {
      "Default": "Information", // Log levels for the application
      "Microsoft": "Warning"   // Log levels for Microsoft libraries
    },
    "File": {
      "Path": "logs/myapp.log" // File path for the log file
    }
  }
}
JSON

Die Konfiguration gibt an, dass alle Standardloggings auf dem 'Information'-Niveau erfolgen sollen, aber Microsofts Bibliotheken nur Warnungen und darüber protokollieren sollen. Es leitet auch die Logging-Ausgabe in eine Logdatei namens myapp.log in einem logs-Verzeichnis.

Fortgeschrittene Protokollierungstechniken

Über grundlegende Lognachrichten hinaus unterstützt C# strukturiertes Logging, das es ermöglicht, strukturierte Daten in Ihre Logs einzuschließen anstatt nur reinen Text. Strukturiertes Logging erleichtert das Suchen und Analysieren von Logdaten, da jedes Stück Kontextinformation als separates Feld gespeichert wird.

// Log message with structured data
logger.LogDebug("Processing order {OrderId} at {Timestamp}", orderId, DateTime.UtcNow);

In diesem Beispiel für strukturiertes Logging sind OrderId und Zeitstempel Platzhalter innerhalb der Nachrichtenvorlage, die mit den Werten von orderId und DateTime.UtcNow gefüllt werden. Dies ist mächtiger als herkömmliches Logging, da es eine einfachere Abfrage und Manipulation von Logdaten basierend auf spezifischen Feldern innerhalb jedes Logeintrags ermöglicht.

Integration mit externen Systemen

C#-Logging kann erweitert werden, um sich mit externen Systemen wie SQL Server oder Windows-Ereignisprotokoll zu integrieren, wodurch das Management und die Analyse der Logdaten verbessert werden. Durch den Einsatz spezialisierter Logging-Anbieter können Lognachrichten zu diesen Systemen geleitet werden, was robustere Möglichkeiten zur Fehlermonitoring und Reaktion bietet.

// Direct log output to the Windows Event Log under a specific source name
builder.AddEventLog(new EventLogSettings
{
    SourceName = "MyApplication"
});

Dieser Konfigurationsabschnitt leitet die Logausgabe an das Windows-Ereignisprotokoll unter dem Quellennamen "MyApplication" um. Dies ist besonders nützlich für Anwendungen, die auf Windows-Servern laufen, wo das Ereignisprotokoll ein zentrales Werkzeug zur Überwachung von Software- und Systemnachrichten ist.

Integration von IronPDF in C#-Protokollierung

C#-Protokollierung (Wie es für Entwickler funktioniert): Abbildung 2 - IronPDF-Startseite

Mehr erfahren über IronPDF für HTML zu PDF-Konvertierung ist eine .NET-PDF-Bibliothek, die es Entwicklern ermöglicht, PDFs zu erstellen, zu bearbeiten und darzustellen. Es wandelt HTML in PDF um, was eine häufige Anforderung für das Generieren von Berichten, Rechnungen und anderen Dokumenttypen aus Webinhalten ist. IronPDF bietet eine umfassende Reihe von Funktionen, die verschiedene PDF-bezogene Aufgaben abdecken, einschließlich Text- und Bildbearbeitung, Sicherung von Dokumenten und sogar Extraktion von Inhalten.

Die Kombination von IronPDF mit C# Logging kann die Fehlerbehandlung und das Debugging beim Arbeiten mit PDF-Dateien verbessern. Durch die Integration von Logging können Sie den Prozess der PDF-Erstellung verfolgen und alle auftretenden Probleme oder Ausnahmen erfassen. Diese Integration ist besonders nützlich in Szenarien, in denen PDF-Generierung ein kritischer Bestandteil der Anwendungsfunktionalität ist, wie z.B. dynamische Berichterstellung basierend auf Benutzerdaten.

Codebeispiel

Um IronPDF zusammen mit C# Logging zu verwenden, müssen Sie Logging-Anrufe innerhalb Ihrer PDF-Operationen einbinden. Hier ist ein Beispiel, wie Sie diese beiden Technologien in einer .NET-Anwendung integrieren könnten. Dieses Beispiel setzt voraus, dass Sie die ILogger-Schnittstelle aus Microsoft.Extensions.Logging verwenden.

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

public class PdfGenerator
{
    private readonly ILogger _logger;

    public PdfGenerator(ILogger<PdfGenerator> logger)
    {
        _logger = logger;
    }

    public void CreatePdfFromHtml(string htmlContent, string outputPath)
    {
        try
        {
            // Initialize PDF renderer
            var renderer = new ChromePdfRenderer();
            
            // Convert HTML content to PDF
            var pdf = renderer.RenderHtmlAsPdf(htmlContent);
            
            // Save the generated PDF to a file
            pdf.SaveAs(outputPath);
            
            // Log the success of PDF creation
            _logger.LogInformation("PDF created successfully at {OutputPath}", outputPath);
        }
        catch (Exception ex)
        {
            // Log any errors encountered during PDF creation
            _logger.LogError(ex, "Error creating PDF from HTML");
        }
    }
}

// Usage example
public class Program
{
    static void Main(string[] args)
    {
        // Set the license key for IronPDF, if applicable
        License.LicenseKey = "License-Key";
        
        // Create a logger factory to manage logging configurations
        ILoggerFactory loggerFactory = LoggerFactory.Create(builder =>
        {
            builder.AddConsole(); // Enable logging to the console
        });
        
        // Create a logger for the PdfGenerator class
        ILogger<PdfGenerator> logger = loggerFactory.CreateLogger<PdfGenerator>();
        
        // Instantiate the PDF generator
        PdfGenerator pdfGenerator = new PdfGenerator(logger);
        
        // Example HTML content and output path
        string htmlContent = "<h1>Hello, PDF!</h1><p>This is a simple PDF generated from HTML.</p>";
        string outputPath = "output.pdf";
        
        // Create a PDF from the provided HTML content
        pdfGenerator.CreatePdfFromHtml(htmlContent, outputPath);
    }
}

C#-Protokollierung (Wie es für Entwickler funktioniert): Abbildung 3 - Konsolenausgabe zeigt Protokollnachrichten auf Info-Ebene nach der Integration mit IronPDF

Diese Einrichtung erleichtert nicht nur die Erstellung von PDFs aus HTML, sondern stellt auch sicher, dass der Vorgang durch Protokolle gut dokumentiert wird, was bei Wartung und Fehlerbehebung hilft. Die Integration von Logging mit IronPDF kann die Zuverlässigkeit und Nachvollziehbarkeit der PDF-Verarbeitungsfähigkeiten Ihrer Anwendung erheblich verbessern.

Abschluss

Logging in C# ist eine flexible und leistungsstarke Möglichkeit, detaillierte Informationen über den Betrieb Ihrer Anwendung zu erfassen. Durch die Verwendung verschiedener Logging-Ebenen, die Konfiguration verschiedener Anbieter und die Implementierung von strukturiertem Logging können Entwickler ein umfassendes Loggingsystem erstellen, das die Wartbarkeit und Debuggabilität ihrer Anwendungen verbessert.

Testen Sie IronPDF mit einer kostenlosen Testversion, beginnend bei $999.

Jacob Mellor, Chief Technology Officer @ Team Iron
Chief Technology Officer

Jacob Mellor ist Chief Technology Officer bei Iron Software und ein visionärer Ingenieur, der Pionierarbeit in der C# PDF-Technologie leistet. Als der ursprüngliche Entwickler hinter der Kern-Codebasis von Iron Software hat er die Produktarchitektur des Unternehmens seit seiner Gründung geprägt und es zusammen mit CEO Cameron Rimington in ein Unternehmen mit mehr als 50 Mitarbeitern verwandelt, das die NASA, Tesla und globale Regierungsbehörden beliefert.

...
Weiterlesen

Verwandte Artikel

Key in blue circle

Holen Sie sich sofort Ihren kostenlosen 30-Tage-Testschlüssel.

Your trial license will be sent to your email address

Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.

OR
bullet_checkedIhr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
Buchen Sie Ihre kostenlose Live-Demo
Booking Badge

Von Millionen von Ingenieur*innen weltweit vertraut

Kundenlogos von Iron Software
Erhalten Sie Ihre unverbindliche Beratung
Füllen Sie das Formular unten aus oder senden Sie eine E-Mail an sales@ironsoftware.com
Ihre Daten werden immer vertraulich behandelt.
Von Millionen von Ingenieur*innen weltweit vertraut
Kundenlogos von Iron Software
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.
C# NuGet-Bibliothek für PDF
Installation mit NuGet

Version: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Rechtsklick auf Referenzen, NuGet-Pakete verwalten
  2. Wählen Sie Durchsuchen und suchen Sie nach 'IronPDF'
  3. Paket auswählen und installieren
C# PDF DLL
Download DLL

Version: 2026.9

oder laden Sie den Windows-Installer hier herunter.

  1. Laden Sie IronPDF herunter und entpacken Sie es in ein Verzeichnis wie ~/Libs innerhalb Ihres Lösungsverzeichnisses
  2. Im Visual Studio-Projektmappen-Explorer klicken Sie mit der rechten Maustaste auf Referenzen. Wählen Sie Durchsuchen, "IronPDF.dll"

Lizenzen ab 749 $