IRONSOFTWAREHOME
AKTUALNOŚCI DLA PROGRAMISTÓW

Dottrace .NET Core (jak to działa dla programistów)

Jacob Mellor, Dyrektor Technologiczny @ Team Iron
Jacob Mellor
Updated: 23 kwietnia 2026

Wprowadzenie Dottrace .NET Core, potężne narzędzie w ekosystemie .NET, które jest niezbędnym narzędziem .NET do profilowania wydajności. Jako profiler wydajności .NET, narzędzie śledzenia .NET pozwala deweloperom na przechwytywanie szczegółowych plików śledzenia, które dostarczają wglądu w zdarzenia czasu wykonywania aktywnego procesu. To narzędzie jest niezbędne do optymalizacji aplikacji zbudowanych w oparciu o framework .NET.

Niezależnie od tego, czy przeprowadzasz testy jednostkowe, czy integrujesz kompilacje ciągłej integracji, Dottrace pozwala skutecznie monitorować i analizować wydajność Twoich aplikacji. Korzystając z tego narzędzia, możesz lepiej zrozumieć zachowanie swojej aplikacji, zapewniając jej najwyższą wydajność i niezawodność.

IronPDF to wszechstronna biblioteka do pracy z plikami PDF w aplikacjach .NET. Umożliwia tworzenie, edycję i wyodrębnianie treści z plików PDF. IronPDF obsługuje takie funkcje, jak konwersja HTML do PDF, łączenie plików PDF oraz ich dzielenie. Ta biblioteka jest cennym narzędziem dla każdej aplikacji, która wymaga generowania lub manipulowania dokumentami PDF. W niniejszym artykułe biblioteka ta zostanie wykorzystana w połączeniu z Dottrace w celu przedstawienia rzeczywistego zastosowania Dottrace oraz skuteczności IronPDF.

Pierwsze kroki z Dottrace .NET Core

Konfiguracja Dottrace .NET Core w projektach .NET

Najpierw należy zainstalować Dottrace .NET Core za pomocą NuGet. Otwórz program Visual Studio i wykonaj następujące czynności:

  1. Otwórz program Visual Studio.
  2. Wybierz opcję Utwórz nowy projekt.
  3. Wybierz opcję Aplikacja konsolowa (.NET Core) i kliknij Dalej.
  4. Nazwij swój projekt DottraceExample i kliknij Utwórz.
  5. W oknie Solution Explorer kliknij prawym przyciskiem myszy na projekt i wybierz opcję Manage NuGet Packages.
  6. W menedżerze pakietów NuGet wyszukaj JetBrains.dotTrace.CommandLineTools.
  7. Wybierz pakiet i kliknij Zainstaluj.

Spowoduje to zainstalowanie Dottrace jako zależności w projekcie.

Dottrace .NET Core (Jak to działa dla deweloperów): Rysunek 1 - Pakiet JetBrains.dotTrace do zainstalowania

Profilowanie prostej aplikacji konsolowej

Utwórzmy podstawową aplikację konsolową do profilowania. Zastąp kod w Program.cs następującym:

using System;
using System.Threading;

class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("Starting application...");
        // Simulating a time-consuming operation
        Thread.Sleep(5000);
        Console.WriteLine("Application finished.");
    }
}

Skompiluj i uruchom aplikację, naciskając klawisz F5. Po uruchomieniu aplikacji potrzebny będzie jej identyfikator procesu do profilowania. Identyfikator procesu można znaleźć w oknie Narzędzia diagnostyczne programu Visual Studio lub sprawdzając Menedżera zadań.

Aby utworzyć profil aplikacji za pomocą Dottrace, otwórz okno terminala lub konsolę menedżera pakietów w Visual Studio i uruchom:

dotnet trace collect --process-id <your-process-id> --output trace.nettrace
SHELL

Zastąp <your-process-id> rzeczywistym identyfikatorem procesu działającej aplikacji.

Po zakończeniu działania aplikacji otrzymasz plik trace.nettrace. Ten plik zawiera wszystkie dane profilowania zebrane podczas wykonywania aplikacji. Plik ten można przeanalizować w programie Visual Studio. Postępuj zgodnie z poniższymi wskazówkami:

  1. Otwórz program Visual Studio.
  2. Przejdź do Plik > Otwórz > Plik.
  3. Wybierz plik trace.nettrace i kliknij Otwórz.

Visual Studio wyświetli szczegółowe dane dotyczące wydajności, umożliwiając identyfikację i usuwanie wąskich gardeł wydajności.

Po skonfigurowaniu Dottrace i utworzeniu podstawowego przykładu profilowania można przejść do wdrażania bardziej zaawansowanych funkcji.

Wdrożenie funkcji Dottrace .NET Core

Analiza wykorzystania procesora

Jedną z kluczowych funkcji Dottrace .NET Core jest analiza wykorzystania procesora. Pomaga to zidentyfikować, które części kodu zużywają najwięcej zasobów procesora. Oto jak to zrobić:

Najpierw uruchom aplikację w Visual Studio. Następnie w terminalu lub konsoli menedżera pakietów uruchom:

dotnet trace collect --process-id <your-process-id> --output cpu_usage.nettrace
SHELL

Zastąp <your-process-id> rzeczywistym identyfikatorem procesu aplikacji. Po zakończeniu sesji profilowania otwórz plik cpu_usage.nettrace w Visual Studio:

using System;
using System.Diagnostics;

class Program
{
    static void Main(string[] args)
    {
        var sw = new Stopwatch();
        sw.Start();
        // Simulate a CPU-intensive operation
        for (int i = 0; i < 1000000000; i++) { }
        sw.Stop();
        Console.WriteLine($"Elapsed Time: {sw.ElapsedMilliseconds} ms");
    }
}

Ten kod symuluje operację wymagającą dużej mocy obliczeniowej procesora. Podczas analizy pliku cpu_usage.nettrace zobaczysz, że pętla zajmuje znaczną ilość czasu procesora.

Monitorowanie alokacji pamięci

Dottrace .NET Core może również pomóc w monitorowaniu alokacji pamięci w aplikacji. Ma to kluczowe znaczenie dla wykrywania wycieków pamięci i optymalizacji jej wykorzystania.

Uruchom aplikację i zbierz dane dotyczące alokacji pamięci:

dotnet trace collect --process-id <your-process-id> --output memory_allocation.nettrace
SHELL

Po sesji otwórz plik memory_allocation.nettrace w Visual Studio:

using System;

class Program
{
    static void Main(string[] args)
    {
        for (int i = 0; i < 10000; i++)
        {
            var data = new byte[1024]; // Allocate 1KB
        }
        Console.WriteLine("Memory allocation completed.");
    }
}

Ten kod alokuje pamięć w pętli. Analiza pliku memory_allocation.nettrace pokaże, ile pamięci jest przydzielane i gdzie występuje to w twoim kodzie.

Profilowanie operacji wejścia/wyjścia

Profilowanie operacji wejścia/wyjścia to kolejna istotna funkcja. Pomaga to zrozumieć wpływ odczytu i zapisu plików na wydajność.

Uruchom aplikację i zbierz dane wejścia/wyjścia:

dotnet trace collect --process-id <your-process-id> --output io_operations.nettrace
SHELL

Otwórz plik io_operations.nettrace w Visual Studio do analizy:

using System;
using System.IO;

class Program
{
    static void Main(string[] args)
    {
        var filePath = "test.txt";
        // Write to file
        using (var writer = new StreamWriter(filePath))
        {
            for (int i = 0; i < 1000; i++)
            {
                writer.WriteLine("This is a test line.");
            }
        }
        // Read from file
        using (var reader = new StreamReader(filePath))
        {
            while (reader.ReadLine() != null) { }
        }
        Console.WriteLine("I/O operations completed.");
    }
}

Ten kod zapisuje i odczytuje z pliku. Analizując plik io_operations.nettrace, dowiesz się, ile czasu spędza się na operacjach I/O.

Identyfikacja wąskich gardeł wydajności

Jednym z głównych celów korzystania z Dottrace jest identyfikacja wąskich gardeł wydajności. Analizując zebrane pliki śledzenia, można wskazać powolne fragmenty kodu.

Uruchom aplikację i zbierz dane dotyczące wydajności:

dotnet trace collect --process-id <your-process-id> --output performance_bottlenecks.nettrace
SHELL

Otwórz plik performance_bottlenecks.nettrace w Visual Studio:

using System;
using System.Threading;

class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("Starting application...");
        // Simulate a time-consuming operation
        Thread.Sleep(5000);
        Console.WriteLine("Application finished.");
    }
}

Ten kod symuluje opóźnienie w aplikacji. Analiza pliku performance_bottlenecks.nettrace pokaże, gdzie spędza się najwięcej czasu, co pomoże zoptymalizować te części.

Te przykłady obejmują kluczowe funkcje Dottrace .NET Core. Teraz możesz analizować wykorzystanie procesora, monitorować alokację pamięci, profilować operacje wejścia/wyjścia, identyfikować wąskie gardła wydajności oraz profilować w środowiskach produkcyjnych. Każda funkcja pomaga zoptymalizować i ulepszyć aplikacje .NET Core.

Integracja Dottrace z IronPDF

Wprowadzenie do IronPDF

Dottrace .NET Core (Jak to działa dla deweloperów): Rysunek 2 - Strona internetowa IronPDF

IronPDF to potężna biblioteka .NET, która pozwala łatwo tworzyć, edytować i zarządzać plikami PDF w ramach aplikacji C#. Niezależnie od tego, czy chcesz tworzyć nowe pliki PDF od podstaw, konwertować HTML na PDF, czy edytować istniejące pliki PDF, IronPDF oferuje bogaty zestaw funkcji, które pozwalają sprawnie wykonać te zadania. Jest to przydatne w aplikacjach wymagających generowania i przetwarzania plików PDF, takich jak systemy raportowania, rozwiązania do zarządzania dokumentami i aplikacje internetowe.

Przykład zastosowania połączenia IronPDF z Dottrace

Rozważmy scenariusz, w którym mamy aplikację internetową generującą raporty PDF dla użytkowników. Korzystając z Dottrace, można śledzić wydajność procesu generowania plików PDF, identyfikować problemy z wydajnością za pomocą pliku śledzenia oraz wprowadzać ulepszenia w celu poprawy komfortu użytkowania. Ta integracja jest szczególnie cenna w przypadku aplikacji, które obsługują duże ilości dokumentów PDF lub wymagają przetwarzania o wysokiej wydajności.

Przykładowy kod przedstawiający przypadek użycia

Poniżej znajduje się kompletny przykład kodu pokazujący, jak zintegrować IronPDF z Dottrace. W tym przykładzie tworzona jest prosta konwersja z HTML do PDF, a do monitorowania wydajności operacji wykorzystywany jest Dottrace.

using System;
using IronPdf;
using Microsoft.Diagnostics.Tracing;
using Microsoft.Diagnostics.Tracing.Session;

class Program
{
    static void Main(string[] args)
    {
        // Start tracing session
        using (var session = new TraceEventSession("MySession"))
        {
            session.EnableProvider("Microsoft-Windows-DotNETRuntime");
            // Perform PDF generation
            var pdfDocument = GeneratePdf("Hello, world!");
            // Save the PDF to a file
            pdfDocument.SaveAs("example.pdf");
            // Stop tracing session
            session.Stop();
        }
        Console.WriteLine("PDF generated and performance traced successfully.");
    }

    static PdfDocument GeneratePdf(string htmlContent)
    {
        // Create an instance of the HtmlToPdf renderer
        var renderer = new ChromePdfRenderer();
        // Convert HTML to PDF
        var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
        return pdfDocument;
    }
}

Dottrace .NET Core (Jak to działa dla deweloperów): Rysunek 3 - Wyjście konsoli z poprzedniego przykładu kodu

W tym przykładzie rozpoczynamy od stworzenia TraceEventSession w celu uchwycenia danych wydajnościowych przy użyciu Dottrace. Następnie generujemy plik PDF z prostego ciągu znaków HTML przy użyciu IronPDF. Po zapisaniu pliku PDF zatrzymujemy sesję śledzenia.

Dottrace .NET Core (Jak to działa dla deweloperów): Rysunek 4 - Wyjściowy plik PDF z poprzedniego przykładu kodu

Pozwala nam to monitorować wydajność procesu generowania plików PDF i gromadzić cenne informacje na temat jego przebiegu.

Wnioski

Zapoznaj się ze stroną Opcje licencji IronPDF, aby dowiedzieć się więcej o dostępnych licencjach i ich cenach.

Dzięki integracji Dottrace z IronPDF można znacznie poprawić wydajność i niezawodność procesów generowania plików PDF. Ta integracja zapewnia cenne informacje na temat sposobu, w jaki aplikacja obsługuje zadania związane z plikami PDF, pomagając zoptymalizować operacje i zapewnić płynne działanie aplikacji. IronPDF oferuje wszechstronny zestaw funkcji do pracy z plikami PDF, dzięki czemu jest niezbędnym narzędziem dla każdego dewelopera .NET.

IronPDF oferuje bezpłatną wersję próbną, a licencje zaczynają się od $999, co umożliwia ocenę jego możliwości przed dokonaniem zakupu. Połączenie możliwości Dottrace i IronPDF może pomóc w tworzeniu wydajnych i efektywnych aplikacji, które spełniają potrzeby użytkowników.

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