IRONSOFTWAREHOME
AKTUALNOŚCI DLA PROGRAMISTÓW

Rejestrowanie w Microsoft C# (jak to działa dla programistów)

Jacob Mellor, Dyrektor Technologiczny @ Team Iron
Jacob Mellor
Updated: 5 lipca 2026

Rejestrowanie to podstawowa technika w języku C#, która pozwala na przechwytywanie informacji, ostrzeżeń, błędów i innych istotnych danych podczas działania aplikacji. Pomaga programistom w monitorowaniu działania ich programów, rozwiązywaniu problemów oraz zrozumieniu, jak aplikacja funkcjonuje w różnych kontekstach. C# oferuje kilka frameworków i pakietów do logowania, które ułatwiają wykonywanie zadań związanych z logowaniem. Microsoft.Extensions.Logging jest jednym z najczęściej używanych frameworków do logowania w aplikacjach .NET Core. Pakiet Microsoft.Extensions.Logging NuGet dla .NET Core daje nam dostep do kilku metod rozszerzen, aby pomoc nam w pisaniu różnych poziomów logów. W tym artykułe przyjrzymy się bliżej logowaniu w systemie MS.

Jak skonfigurować rejestrowanie MS

  1. Utwórz nowy projekt w Visual Studio.
  2. Zainstaluj biblioteke Microsoft.Extensions.Logging z strony pakietu Microsoft.Extensions.Logging na NuGet.
  3. Wstrzyknij interfejs Logger do konsoli.
  4. Skonfiguruj wyjście logowania.
  5. Twórz logi na różnych poziomach.
  6. Uruchom kod.

Krok 1: Utwórz nowy projekt w Visual Studio

Aby rozpocząć, utwórz nowy projekt w Visual Studio.

Krok 2: Zainstaluj bibliotekę Microsoft.Extensions.Logging

Zainstaluj biblioteke Microsoft.Extensions.Logging uzywajac strony pakietu Microsoft.Extensions.Logging na NuGet. Ta biblioteka udostępnia klasy i metody niezbędne do rejestrowania w aplikacjach .NET Core.

Krok 3: Wstrzyknięcie interfejsu Logger do konsoli

Aby uzyc funkcjonalnosci logowania, nalezy wstrzyknac instancje interfejsu ILogger do twojej aplikacji konsolowej. Można to osiągnąć za pomocą fabryki logowania.

using Microsoft.Extensions.Logging;

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

Krok 4: Skonfiguruj wyjście logowania

Skonfiguruj sposób wyświetlania logów. Można to zrobić, dodając jednego lub więcej dostawców logowania do Builder loggera. Najpopularniejszym dostawcą jest rejestrator konsoli, który wysyła logi do konsoli.

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

Krok 5: Tworzenie logów na różnych poziomach

Teraz można zapisywać logi na różnych poziomach za pomocą obiektu logger. Dostepne metody logowania to LogDebug(), LogInformation(), LogWarning(), LogError() oraz 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");

Krok 6: Uruchom kod

Na koniec uruchom kod i sprawdź, czy logi są wyświetlane zgodnie z skonfigurowanymi ustawieniami.

To wszystko! Pomyślnie skonfigurowałeś i użyłeś rejestrowania MS w swojej aplikacji C#.

Zainstaluj MS Logging

Aby zainstalować MS Logging, wykonaj następujące czynności:

  1. Uruchom program Visual Studio.

  2. Przejdź do menu Narzędzia > Menedżer pakietów NuGet > Konsola menedżera pakietów.

  3. W konsoli menedżera pakietów wykonaj następujące polecenie:

    Install-Package Microsoft.Extensions.Logging
    PowerShell
  4. Naciśnij klawisz Enter, aby wykonać polecenie. To spowoduje pobranie i zainstalowanie pakietu Microsoft.Extensions.Logging do twojego projektu.

Poziomy logowania

W frameworku Microsoft.Extensions.Logging w C# dostepnych jest kilka poziomów logowania, co pozwala programistom klasyfikowac i oceniana logi wedlug ich znaczenia i powagi. Poziomy te są często używane do rozróżniania różnych typów komunikatów i pomagają w regulowaniu szczegółowości logów.

Domyslne poziomy logowania oferowane przez Microsoft.Extensions.Logging sa nastepujace:

  • Trace: Najbardziej szczegółowy poziom, często stosowany w przypadku niezwykle szczegółowych danych, które zapewniają głębokie zrozumienie wewnętrznego działania programu.
  • Debug: Informacje dotyczące debugowania, które są przydatne na etapie tworzenia i debugowania, ale często nie są wymagane w środowisku produkcyjnym.
  • Informacje: Zawiera szczegółowe informacje na temat normalnego działania aplikacji. Zazwyczaj za pomocą tych logów monitoruje się normalne działanie programu.
  • Ostrzeżenie: Wskazuje na potencjalny problem lub kwestię, która może wymagać uwagi w przyszłości. Jest używany w sytuacjach nietypowych lub nieoczekiwanych, które mogą powodować problemy, ale niekoniecznie prowadzą do awarii programu.
  • Błąd: Sygnalizuje poważny problem lub pomyłkę, którą należy natychmiast naprawić. Zwykle używane do rejestrowania problemów, które mają wpływ na działanie aplikacji.
  • Krytyczny: Najpoważniejszy stan, używany do rejestrowania krytycznych problemów, które wymagają natychmiastowego rozwiązania, ponieważ mogą powodować poważne awarie lub zawieszenia programu.

Każdy poziom logowania służy konkretnemu celowi i zapewnia programistom możliwość zarządzania ilością danych generowanych przez framework logowania. Programiści mogą wybrać odpowiedni poziom rejestrowania komunikatów w zależności od wagi i znaczenia rejestrowanych danych.

Konfigurowanie logowania w C#

Oto podstawowy przyklad, jak skonfigurowac logowanie z uzyciem 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
    }
}

W tym przykładzie do konfiguracji logowania dodano rejestrator konsoli, który zapisuje logi w konsoli. Jednak Microsoft.Extensions.Logging oferuje różnych dostawców logowania, wlacznie z logowaniem do plików, baz danych lub laczeniem z innymi frameworkami logowania. Dodatkowo możliwe jest tworzenie niestandardowych dostawców logowania, którzy mogą formatować logi zgodnie z konkretnymi wymaganiami.

Dodanie dodatkowych dostawców usług rejestrowania

Mozna dodac dodatkowe zródla logowania, laczac odpowiednie metody w funkcji Create(). Na przykład:

  • Aby dodac dostawce logowania do debuggera, uzyj builder.AddDebug().
  • Aby dodac dostawce logowania do pliku, uzyj builder.AddFile("log.txt").

MSLogging w IronPDF

IronPDF wyróżnia się w konwersji HTML do PDF, zapewniając precyzyjne zachowanie oryginalnych układów i stylów. Idealnie nadaje się do tworzenia plików PDF z treści internetowych, takich jak raporty, faktury i dokumentacja. Dzięki obsłudze plików HTML, adresów URL i surowych ciągów znaków HTML, IronPDF z łatwością tworzy wysokiej jakości dokumenty 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");
    }
}

Aby wlaczyc logowanie w IronPDF, mozna uzyc frameworka Microsoft.Extensions.Logging wraz z wbudowanymi mozliwosciami logowania IronPDF. Oto przykład konfiguracji logowania w 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();
    }
}

W tym przykladzie tworzymy instancje LoggerFactory z frameworka Microsoft.Extensions.Logging. Nastepnie tworzymy logger z fabryki dla klasy Program.

Aby wlaczyc logowanie w IronPDF, ustawiamy statyczna wlasciwosc Logger.Log na instancje LoggerImplementation, która pobiera logger z loggerFactory. Z ta konfiguracja mozna uzywac metod Logger.Log do logowania wiadomosci w IronPDF.

Po wykonaniu niezbednych operacji za pomoca IronPDF, mozna zamknac i usunac zasoby, a nastepnie opróznic wiadomosci logów przez usuniecie loggerFactory.

Uwaga: Upewnij sie, ze posiadasz zainstalowane niezbedne zaleznosci i pakiety dla Microsoft.Extensions.Logging oraz IronPDF.

Zainstaluj IronPDF

Aby zainstalować bibliotekę IronPDF, wykonaj następujące czynności:

  1. Otwórz konsolę menedżera pakietów w programie Visual Studio.
  2. Wpisz następujące polecenie, aby zainstalować bibliotekę IronPDF za pomocą NuGet:

PM > Install-Package IronPdf

Alternatywnie można użyć interfejsu CLI platformy .NET, uruchamiając w terminalu następujące polecenie:

PM > Install-Package IronPdf

  1. Naciśnij klawisz Enter, aby wykonać polecenie. Spowoduje to pobranie i zainstalowanie pakietu IronPDF w Twoim projekcie.

Bibliotekę IronPDF można również zainstalować za pomocą graficznego interfejsu użytkownika menedżera pakietów NuGet. Wystarczy wyszukać pakiet "IronPDF" w zakładce Przeglądaj, wybrać żądany pakiet z listy i zainstalować najnowszą wersję IronPDF.

Po zakończeniu instalacji możesz zacząć korzystać z biblioteki IronPDF w swoim projekcie.

Rejestrowanie MS przy użyciu IronPDF

Na styczen 2022, IronPDF nie integruje sie bezposrednio z Microsoft.Extensions.Logging i nie jest natywnie wspierany. IronPDF jest używany przede wszystkim jako narzędzie do tworzenia i modyfikowania plików PDF w programach napisanych w języku C#.

Można jednak nadal wykorzystywać logowanie przy użyciu Microsoft.Extensions. Dzięki zintegrowaniu rejestrowania zdarzeń z programem C# wraz z IronPDF można zarządzać i rejestrować zdarzenia związane z tworzeniem plików PDF, przepływem pracy aplikacji lub problemami występującymi podczas korzystania z IronPDF.

Oto przykład wykorzystania Microsoft.Extensions do integracji logowania z IronPDF:

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
    }
}

Ten przykład pokazuje prosty sposób konfiguracji Microsoft.Extensions.Logging w aplikacji C# korzystającej z IronPDF. Generowane są komunikaty logowania w celu udokumentowania pomyślnego utworzenia plików PDF oraz zarejestrowania wszelkich wyjątków, które mogą wystąpić.

Pamiętaj, aby dostosować poziomy logowania, obsługę błędów i komunikaty do konkretnych potrzeb Twojej aplikacji oraz scenariuszy, w których IronPDF jest używany do tworzenia lub modyfikacji plików PDF. Właściwe rozróżnienie między różnymi typami komunikatów dziennika przy użyciu poziomów logowania może być przydatne do skutecznego debugowania i monitorowania.

Aby dowiedzieć się więcej o IronPDF, odwiedź stronę główną IronPDF.

Wnioski

Podsumowując, integracja biblioteki Microsoft.Extensions.Logging pozwala programistom C# na efektywne wykonywanie zadań związanych z logowaniem. IronPDF zapewnia kompleksowe funkcje rejestrowania, umożliwiające dokładne rejestrowanie, analizę i raportowanie zdarzeń aplikacji, awarii oraz kluczowych danych. Zwiększa to niezawodność aplikacji, ułatwia konserwację i debugowanie.

IronPDF oferuje rózne produkty programowe, wlacznie z pakietem Lite w cenie $999. Ten pakiet zawiera stałą licencję, opcje aktualizacji, roczną konserwację oprogramowania oraz trzydziestodniową gwarancję zwrotu pieniędzy. W trakcie okresu próbnego z znakiem wodnym możesz zapoznać się z funkcjami IronPDF. Aby dowiedzieć się więcej o produktach Iron Software, odwiedź oficjalną stronę internetową Iron Software.

Jacob Mellor, Dyrektor Technologiczny @ Team Iron
Dyrektor ds. technologii

Jacob Mellor jest Chief Technology Officer w Iron Software i wizjonerskim inżynierem, pionierem technologii C# PDF. Jako pierwotny deweloper głównej bazy kodowej Iron Software, kształtuje architekturę produktów firmy od jej początku, przekształcając ją wspólnie z CEO Cameron Rimington w firmę liczącą ponad 50 osób, obsługującą NASA, Teslę i światowe agencje rządowe.

...
Czytaj więcej

Powiązane artykuły

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta