Debugowanie wyjątków w aplikacjach platformy .NET przy użyciu narzędzia Snapshot Debugger

Za pomocą narzędzia Snapshot Debugger można automatycznie zbierać migawkę debugowania, gdy wystąpi wyjątek w aktywnej aplikacji .NET. Zebrane migawki debugowania pokazują stan kodu źródłowego i zmiennych w momencie zgłoszenia wyjątku.

Debuger migawek w aplikacji Szczegółowe informacje:

  • Monitoruje dzienniki generowane przez system z poziomu aplikacji internetowej.
  • Zbiera migawki w zgłaszanych wyjątkach.
  • Zawiera informacje potrzebne do diagnozowania problemów w środowisku produkcyjnym.

Dowiedz się więcej na temat procesów narzędzia Snapshot Debugger i programu do przekazywania migawek.

Obsługiwane aplikacje i środowiska

W tej sekcji wymieniono obsługiwane aplikacje i środowiska.

Aplikacje

Kolekcja migawek jest dostępna dla:

Środowiska

Obsługiwane są następujące środowiska:

Uwaga

Aplikacje klienckie (na przykład WPF, Windows Forms lub UWP) nie są obsługiwane.

Wymagania wstępne dotyczące korzystania z debugera migawek

Pakiety i konfiguracje

Uprawnienia

  • Sprawdź, czy dodano cię do roli debugera migawek Szczegółowe informacje aplikacji docelowej Szczegółowe informacje.

Jak działa debuger migawek

Debuger migawek jest implementowany jako procesor telemetrii Szczegółowe informacje aplikacji. Po uruchomieniu aplikacji procesor telemetrii Snapshot Debugger jest dodawany do potoku dzienników generowanych przez system aplikacji.

Ważne

Migawki mogą zawierać dane osobowe lub inne poufne informacje w wartościach zmiennych i parametrów. Dane migawek są przechowywane w tym samym regionie co zasób aplikacji Szczegółowe informacje.

Proces debugera migawek

Proces debugera migawek rozpoczyna się i kończy się TrackException metodą . Migawka procesu jest wstrzymanym klonem uruchomionego procesu, dzięki czemu użytkownicy nie mają żadnych przerw w działaniu.

  1. Aplikacja zgłasza błąd TrackException.

  2. Debuger migawek monitoruje wyjątki w miarę ich zgłaszania przez subskrybowanie zdarzenia AppDomain.CurrentDomain.FirstChanceException .

  3. Licznik jest zwiększany dla identyfikatora problemu.

    • Gdy licznik osiągnie wartość, identyfikator problemu ThresholdForSnapshotting zostanie dodany do planu kolekcji.

    Uwaga

    Domyślna wartość minimalna ThresholdForSnapshotting to 1. Przy użyciu tej wartości aplikacja musi wyzwolić ten sam wyjątek dwa razy przed utworzeniem migawki.

  4. Identyfikator problemu zdarzenia wyjątku jest obliczany i porównywany z identyfikatorami problemów w planie kolekcji.

  5. Jeśli istnieje dopasowanie między identyfikatorami problemów, zostanie utworzona migawka uruchomionego procesu.

    • Migawka ma przypisany unikatowy identyfikator, a wyjątek jest oznaczany tym identyfikatorem.

    Uwaga

    Szybkość tworzenia migawki jest ograniczona SnapshotsPerTenMinutesLimit przez ustawienie. Domyślnie limit to jedna migawka co 10 minut.

  6. Po powrocie FirstChanceException programu obsługi zgłaszany wyjątek jest przetwarzany normalnie.

  7. Wyjątek ponownie dociera do TrackException metody i jest zgłaszany do aplikacji Szczegółowe informacje wraz z identyfikatorem migawki.

Uwaga

Ustaw IsEnabledInDeveloperMode wartość na true , jeśli chcesz wygenerować migawki podczas debugowania w programie Visual Studio.

Proces przekazywania migawek

Podczas gdy proces debugera migawek nadal działa i obsługuje ruch do użytkowników z niewielkimi przerwami, migawka jest przekazywana do procesu przekazywania migawek. Program przekazujący migawki:

  1. Tworzy minidump.

  2. Przekazuje minidump do aplikacji Szczegółowe informacje wraz z dowolnymi odpowiednimi plikami symboli (pdb).

Uwaga

Nie można przekazać więcej niż 50 migawek dziennie.

Jeśli włączono debuger migawek, ale nie widzisz migawek, zobacz Przewodnik rozwiązywania problemów.

Ograniczenia

W tej sekcji omówiono ograniczenia dotyczące debugera migawek.

  • Przechowywanie danych

    Migawki debugowania są przechowywane przez 15 dni. Domyślne zasady przechowywania danych są ustawiane dla poszczególnych aplikacji. Jeśli chcesz zwiększyć tę wartość, możesz poprosić o zwiększenie, otwierając zgłoszenie do pomocy technicznej w witrynie Azure Portal. Dla każdego wystąpienia aplikacji Szczegółowe informacje dozwolona jest maksymalna liczba 50 migawek dziennie.

  • Symbole publikowania

    Debuger migawek wymaga plików symboli na serwerze produkcyjnym, aby:

    • Dekoduj zmienne
    • Zapewnianie środowiska debugowania w programie Visual Studio

    Domyślnie program Visual Studio 2017 w wersji 15.2 lub nowszej publikuje symbole kompilacji wydania podczas publikowania w usłudze App Service.

    W poprzednich wersjach należy dodać następujący wiersz do pliku profilu .pubxml publikowania, aby symbole zostały opublikowane w trybie wydania:

         <ExcludeGeneratedDebugSymbol>False</ExcludeGeneratedDebugSymbol>
    

    W przypadku usługi Azure Compute i innych typów upewnij się, że pliki symboli są następujące:

    • W tym samym folderze głównej aplikacji .dll (zazwyczaj wwwroot/bin), lub
    • Dostępne w bieżącej ścieżce.

    Aby uzyskać więcej informacji na temat różnych dostępnych opcji symboli, zobacz dokumentację programu Visual Studio. Aby uzyskać najlepsze wyniki, zalecamy użycie opcji Full, Portable lub Embedded.

  • Zoptymalizowane kompilacje

    W niektórych przypadkach zmiennych lokalnych nie można wyświetlić w kompilacjach wydania z powodu optymalizacji stosowanych przez kompilator JIT.

    Jednak w usłudze App Service debuger migawek może deoptymalizować metody, które są częścią planu kolekcji.

    Napiwek

    Zainstaluj rozszerzenie aplikacji Szczegółowe informacje lokacji w wystąpieniu usługi App Service, aby uzyskać obsługę deoptymalizacji.

Następne kroki

Włącz narzędzie Application Szczegółowe informacje Snapshot Debugger dla aplikacji:

Informacje o wersji programu Microsoft.ApplicationInsights.SnapshotCollector

Ta sekcja zawiera informacje o Microsoft.ApplicationInsights.SnapshotCollector wersji pakietu NuGet dla aplikacji platformy .NET, które są używane przez program Application Szczegółowe informacje Snapshot Debugger.

Dowiedz się więcej na temat narzędzia Application Szczegółowe informacje Snapshot Debugger dla aplikacji platformy .NET.

W przypadku raportów o usterce i opinii otwórz problem w usłudze GitHub.

Uwaga

31 marca 2025 r. zostanie zakończone świadczenie pomocy technicznej dla pozyskiwania klucza instrumentacji. Pozyskiwanie klucza instrumentacji będzie nadal działać, ale nie udostępnimy już aktualizacji ani obsługi funkcji. Przejście do parametry połączenia w celu skorzystania z nowych funkcji.

1.4.6

Wydanie punktu w celu rozwiązania regresji w przypadku korzystania z aplikacji platformy .NET 8.

Poprawki błędów

  • Wyjątki zgłaszane z dynamicznie generowanych metod (np. skompilowanych drzew wyrażeń) na platformie .NET 8 nie są śledzone poprawnie. Stałe.

1.4.5

Wydanie punktu w celu rozwiązania błędu zgłoszonego przez użytkownika.

Poprawki błędów

  • Naprawiono wyjątek AccessViolationException podczas odczytywania niektórych plików PDB.

Zmiany

  • Dodano plik ReadMe do pakietu NuGet.
  • Zaktualizowano msdia140.dll.

1.4.4

Wydanie punktu w celu rozwiązania problemów z usterkami zgłoszonymi przez użytkownika.

Poprawki błędów

Zmiany

  • Obniżone komunikaty o błędach skanowania pdB z błędu na Ostrzeżenie.
  • Zaktualizowano msdia140.dll.
  • Unikaj nawiązywania połączenia z usługą, jeśli debuger jest wyłączony za pośrednictwem ustawień rozszerzenia lokacji.

1.4.3

Wydanie punktu w celu rozwiązania problemów z usterkami zgłoszonymi przez użytkownika.

Poprawki błędów

1.4.2

Wydanie punktu w celu rozwiązania błędu zgłoszonego przez użytkownika.

Poprawki błędów

Naprawiono wyjątek ArgumentException: Delegaty muszą być tego samego typu.

1.4.1

Wydanie punktu w celu odwrócenia zmiany powodującej niezgodność wprowadzonej w wersji 1.4.0.

Poprawki błędów

Nie można odnaleźć metody stałej w zadaniach WebJob.

1.4.0

Rozwiązano wiele ulepszeń i dodano obsługę uwierzytelniania w usłudze Microsoft Entra na potrzeby pozyskiwania Szczegółowe informacje aplikacji.

Zmiany

  • Zmniejszony rozmiar pakietu modułu zbierającego migawki o 60% z 10,34 MB do 4,11 MB.
  • Docelowa wartość netstandard2.0 tylko w module zbierającym migawki.
  • Zależność zestawu SDK Szczegółowe informacje aplikacji Szczegółowe informacje do wersji 2.15.0.
  • Dodano z powrotem MinidumpWithThreadInfo podczas zapisywania zrzutów.
  • Dodano CompatibilityVersion polecenie w celu ulepszenia synchronizacji między agentem modułu zbierającego migawki a modułem przekazującym migawki w przypadku zmian powodujących niezgodność.
  • Zmieniono SnapshotUploader algorytm nazewnictwa pliku LogFile, aby uniknąć nadmiernego we/wy pliku w usłudze App Service.
  • Dodano pidelement , role namei process start time do przekazanych metadanych obiektu blob.
  • Używane System.Diagnostics.Process w module zbierającym migawki i narzędziu do przekazywania migawek.

Nowe funkcje

Dodano uwierzytelnianie firmy Microsoft Entra do elementu SnapshotCollector. Aby dowiedzieć się więcej na temat uwierzytelniania entra firmy Microsoft w usłudze Application Szczegółowe informacje, zobacz Microsoft Entra authentication for Application Szczegółowe informacje (Uwierzytelnianie w usłudze Microsoft Entra dla aplikacji Szczegółowe informacje).

1.3.7.5

Wydanie punktu w celu ponownego zaimportowania poprawki z wersji 1.4.0-pre.

Poprawki błędów

Naprawiono wyjątek ObjectDisposedException podczas zamykania.

1.3.7.4

Wydanie punktu w celu rozwiązania problemu wykrytego podczas testowania scenariusza dołączania bez kodu usługi App Service.

Zmiany

Element netcoreapp3.0 docelowy zależy teraz od Microsoft.ApplicationInsights.AspNetCore>= 2.1.1 (wcześniej >= 2.1.2).

1.3.7.3

Wydanie punktu w celu rozwiązania kilku problemów o dużym wpływie.

Poprawki błędów

  • Naprawiono odnajdywanie pdB w folderze wwwroot/bin , które zostało przerwane po zmianie algorytmu wyszukiwania symboli w wersji 1.3.6.
  • Naprawiono hałaśliwy ExtractWasCalledMultipleTimesException w telemetrii.

1.3.7

Zmiany

Wartość docelowa netcoreapp2.0SnapshotCollector elementu zależy od Microsoft.ApplicationInsights.AspNetCore>= 2.1.1 (ponownie). Ta zmiana przywraca zachowanie tak, aby była wcześniejsza niż 1.3.5. Próbowaliśmy uaktualnić go w wersji 1.3.6, ale niektóre scenariusze usługi App Service uległy awarii.

Nowe funkcje

Moduł zbierający migawki odczytuje i analizuje element ConnectionString ze zmiennej środowiskowej APPLICATIONINSIGHTS_CONNECTION_STRING lub z TelemetryConfiguration. Przede wszystkim służy do ustawiania punktu końcowego na potrzeby nawiązywania połączenia z usługą Snapshot. Aby uzyskać więcej informacji, zobacz dokumentację ciągów Połączenie ion.

Poprawki błędów

Przełączono się na używanie HttpClient dla wszystkich obiektów docelowych z wyjątkiem net45 tego, że WebRequest w niektórych środowiskach wystąpił błąd z powodu niezgodności SecurityProtocol (wymaga protokołu TLS 1.2).

1.3.6

Zmiany

  • SnapshotCollector teraz zależy od Microsoft.ApplicationInsights>= 2.5.1 dla wszystkich platform docelowych. To wymaganie może być zmianą powodującą niezgodność, jeśli aplikacja zależy od starszej wersji zestawu Microsoft.Application Szczegółowe informacje SDK.
  • Usunięto obsługę protokołu TLS 1.0 i 1.1 w narzędziu do przekazywania migawek.
  • Okres skanowania pdB jest teraz domyślny 24 godziny zamiast 15 minut. Można skonfigurować za pomocą polecenia PdbRescanInterval w systemie SnapshotCollectorConfiguration.
  • Skanowanie pliku PDB wyszukuje tylko foldery najwyższego poziomu, a nie rekursywne. Ta zmiana może być zmianą powodującą niezgodność, jeśli symbole znajdują się w podfolderach folderu binarnego.

Nowe funkcje

  • Rotacja dziennika w programie , SnapshotUploader aby uniknąć wypełniania folderu dzienników starymi plikami.
  • Obsługa deoptymalizacji (za pośrednictwem funkcji ReJIT podczas dołączania) dla aplikacji platformy .NET Core 3.0.
  • Dodano symbole do pakietu NuGet.
  • Ustaw więcej metadanych podczas przekazywania minidumps.
  • Initialized Dodano właściwość do SnapshotCollectorTelemetryProcessorelementu . CancellationTokenJest to element , który jest anulowany, gdy moduł zbierający migawki jest inicjowany i połączony z punktem końcowym usługi.
  • Migawki można teraz przechwytować dla wyjątków w metodach generowanych dynamicznie. Przykładem są skompilowane drzewa wyrażeń generowane przez zapytania platformy Entity Framework.

Poprawki błędów

  • AmbiguousMatchException ładowanie modułu zbierającego migawki z powodu monitora stanu.
  • GetSnapshotCollector metoda rozszerzenia wyszukuje teraz wszystkie TelemetrySinksmetody .
  • Nie uruchamiaj narzędzia do przekazywania migawek na nieobsługiwanych platformach.
  • Dojście InvalidOperationException podczas deoptymalizacji metod dynamicznych (na przykład Entity Framework).

1.3.5

  • Dodano obsługę suwerennych chmur (starsze wersje nie działają w suwerennych chmurach).
  • Dodanie modułu zbierającego migawki jest łatwiejsze przy użyciu polecenia AddSnapshotCollector(). Aby uzyskać więcej informacji, zobacz Włączanie debugera migawek dla aplikacji platformy .NET w usłudze aplikacja systemu Azure Service.
  • Użyj ustawienia FISMA MD5 do weryfikowania bloków obiektów blob. To ustawienie pozwala uniknąć domyślnego algorytmu kryptograficznego MD5 platformy .NET, który jest niedostępny, gdy system operacyjny jest ustawiony na tryb zgodny ze standardem FIPS.
  • Ignoruj ramki programu .NET Framework podczas deoptymalizacji wywołań funkcji. Steruj tym zachowaniem za pomocą DeoptimizeIgnoredModules ustawienia konfiguracji.
  • DeoptimizeMethodCount Dodano ustawienie konfiguracji, które umożliwia deoptymalizowanie więcej niż jednego wywołania funkcji.

1.3.4

  • Dozwolone klucze instrumentacji strukturalnej.
  • Zwiększona niezawodność narzędzia do przekazywania migawek. Kontynuuj uruchamianie, nawet jeśli nie można przenieść starych dzienników modułu przekazującego.
  • Ponowne raportowanie większej ilości danych telemetrycznych w przypadku natychmiastowego zakończenia SnapshotUploader.exe (została wyłączona w wersji 1.3.3).
  • Uproszczone wewnętrzne dane telemetryczne.
  • Funkcja eksperymentalna: Plany kolekcji punktów przyciągania: Dodaj snapshotOnFirstOccurence. Aby uzyskać więcej informacji, zobacz ten artykuł w usłudze GitHub.

1.3.3

Usunięto usterkę powodującą , że SnapshotUploader.exe przestać odpowiadać, a nie przekazywać migawek dla aplikacji platformy .NET Core.

1.3.2

  • Funkcja eksperymentalna: plany kolekcji snappoint. Aby uzyskać więcej informacji, zobacz ten artykuł w usłudze GitHub.
  • SnapshotUploader.exe kończy działanie, gdy środowisko uruchomieniowe zwalnia AppDomainSnapshotCollector załadowane, zamiast czekać na zakończenie procesu. Ta akcja zwiększa niezawodność modułu zbierającego w przypadku hostowanych w usługach IIS.
  • Dodano konfigurację umożliwiającą korzystanie z wielu SnapshotCollector wystąpień używających tego samego klucza instrumentacji do współużytkowania tego samego SnapshotUploader procesu: ShareUploaderProcess (wartość domyślna to true).
  • Zgłoszono więcej danych telemetrycznych, gdy SnapshotUploader.exe natychmiast kończy działanie.
  • Zmniejszono liczbę plików pomocy technicznej, SnapshotUploader.exe musi zapisywać na dysku.

1.3.1

  • Usunięto obsługę zbierania migawek przy użyciu interfejsu API RtlCloneUserProcess i obsługuje tylko interfejs API PssCaptureSnapshots.
  • Zwiększono domyślny limit liczby migawek, które można przechwycić w ciągu 10 minut od jednego do trzech.
  • Zezwalaj SnapshotUploader.exe na negocjowanie protokołów TLS 1.1 i 1.2.
  • Zgłoszono więcej danych telemetrycznych podczas SnapshotUploader rejestrowania ostrzeżenia lub błędu.
  • Zatrzymaj tworzenie migawek, gdy usługa zaplecza zgłasza dzienny limit przydziału (50 migawek dziennie).
  • Dodano dodatkowe zaewidencjonowania SnapshotUploader.exe, aby nie zezwalać na uruchamianie dwóch wystąpień w tym samym czasie.

1.3.0

Zmiany

  • W przypadku aplikacji przeznaczonych dla programu .NET Framework moduł zbierający migawki zależy teraz od aplikacji Microsoft.Application Szczegółowe informacje w wersji 2.3.0 lub nowszej. Wcześniej była to wersja 2.2.0 lub nowsza. Uważamy, że ta zmiana nie będzie problemem dla większości aplikacji. Poinformuj nas, czy ta zmiana uniemożliwia korzystanie z najnowszego modułu zbierającego migawki.
  • Podczas ponawiania próby przekazania nie powiodło się, użyj opóźnień wycofywania wykładniczego w module przekazywania migawek.
  • Użyj ServerTelemetryChannel (jeśli jest dostępna) w celu uzyskania bardziej niezawodnego raportowania danych telemetrycznych.
  • Użyj SdkInternalOperationsMonitor polecenia na początkowym połączeniu z usługą Snapshot Debugger, aby śledzenie zależności je ignorowało.
  • Ulepszono dane telemetryczne dotyczące początkowego połączenia z debugerem migawki.
  • Zgłoś więcej danych telemetrycznych dla:
    • Wersja usługi App Service.
    • Wystąpienia obliczeniowe platformy Azure.
    • Kontenery.
    • Aplikacja usługi Azure Functions.

Poprawki błędów

  • Gdy interwał resetowania licznika problemów jest ustawiony na 24 dni, zinterpretuj to jako 24 godziny.
  • Usunięto usterkę polegającą na tym, że program przekazujący migawki przestał przetwarzać nowe migawki, jeśli wystąpił wyjątek podczas dysponowania migawki.

1.2.3

Naprawiono podpisywanie silnej nazwy przy użyciu plików binarnych narzędzia do przekazywania migawek.

1.2.2

Zmiany

  • Pliki wymagane dla biblioteki SnapshotUploader(64).exe są teraz osadzone jako zasoby w głównej biblioteki DLL. Oznacza to, że SnapshotCollectorFiles folder nie jest już tworzony, co upraszcza kompilowanie i wdrażanie oraz zmniejsza ilość danych w Eksplorator rozwiązań. Podczas uaktualniania należy zachować ostrożność, aby przejrzeć zmiany w .csproj pliku. Plik Microsoft.ApplicationInsights.SnapshotCollector.targets nie jest już potrzebny.
  • Dane telemetryczne są rejestrowane w zasobie Szczegółowe informacje aplikacji, nawet jeśli ProvideAnonymousTelemetry ustawiono wartość false. Ta zmiana pozwala zaimplementować funkcję sprawdzania kondycji w witrynie Azure Portal. ProvideAnonymousTelemetry dotyczy tylko danych telemetrycznych wysyłanych do firmy Microsoft w celu uzyskania pomocy technicznej i poprawy produktu.
  • Gdy TempFolder lub ShadowCopyFolder są przekierowywane do zmiennych środowiskowych, zachowaj bezczynność modułu zbierającego do momentu ustawienia tych zmiennych środowiskowych.
  • W przypadku aplikacji łączących się z Internetem za pośrednictwem serwera proxy moduł zbierający migawki automatycznie wykrywa wszystkie ustawienia serwera proxy i przekazuje je do SnapshotUploader.exe.
  • Obniż priorytet SnapshotUploader procesu (jeśli to możliwe). Ten priorytet można zastąpić za pomocą IsLowPrioirtySnapshotUploader opcji .
  • Dodano metodę GetSnapshotCollector rozszerzenia dla TelemetryConfiguration scenariuszy, w których chcesz programowo skonfigurować moduł zbierający migawki.
  • Ustaw wersję zestawu SDK Szczegółowe informacje aplikacji (zamiast wersji aplikacji) w telemetrii dostępnej dla klienta.
  • Wyślij pierwsze zdarzenie pulsu po dwóch minutach.

Poprawki błędów

  • Naprawiono NullReferenceException , gdy wyjątki mają słowniki danych o wartości null lub niezmienne.
  • W module przekazującym ponów próbę dopasowania pliku PDB kilka razy, jeśli wystąpi naruszenie zasad udostępniania.
  • Napraw zduplikowane dane telemetryczne, gdy więcej niż jeden wątek wywołuje potok telemetrii podczas uruchamiania.

1.2.1

Zmiany

  • Pliki komentarzy dokumentu XML są teraz zawarte w pakiecie NuGet.
  • Dodano metodę ExcludeFromSnapshotting rozszerzenia dla System.Exception scenariuszy, w których wiesz, że masz hałaśliwy wyjątek i chcesz uniknąć tworzenia migawek.
  • IsEnabledWhenProfiling Dodano właściwość konfiguracji, która jest domyślnie ustawiona na true. Jest to zmiana z poprzednich wersji, w której tworzenie migawki zostało tymczasowo wyłączone, jeśli aplikacja Szczegółowe informacje Profiler wykonywała szczegółową kolekcję. Stare zachowanie można odzyskać, ustawiając tę właściwość na false.

Poprawki błędów

  • Poprawnie podpisać SnapshotUploader64.exe .
  • Ochrona przed podwójną inicjacją procesora telemetrii.
  • Zapobiegaj podwójnemu rejestrowaniu danych telemetrycznych w aplikacjach przy użyciu wielu potoków.
  • Usunięto usterkę z czasem wygaśnięcia planu kolekcji, co mogło uniemożliwić migawki po 24 godzinach.

1.2.0

Największą zmianą w tej wersji (stąd przejście do nowego numeru wersji pomocniczej) jest przepisanie potoku tworzenia i obsługi migawki. W poprzednich wersjach ta funkcja została zaimplementowana w kodzie natywnym (ProductionBreakpoints.dll* i SnapshotHolder.exe*). Nowa implementacja to cały kod zarządzany z wywołaniami P/Invoke.

W przypadku tej pierwszej wersji przy użyciu nowego potoku nie odeszliśmy od oryginalnego zachowania. Nowa implementacja umożliwia lepsze raportowanie błędów i konfiguruje nas na potrzeby przyszłych ulepszeń.

Inne zmiany w tej wersji

  • nazwa MinidumpUploader.exe została zmieniona na SnapshotUploader.exe (lub SnapshotUploader64.exe).
  • Dodano telemetrię chronometrii do deOptimize/ReOptimize żądań.
  • Dodano kompresję gzip na potrzeby przekazywania minidump.
  • Rozwiązano problem polegający na tym, że pliki PDB były zablokowane uniemożliwiające uaktualnienie lokacji.
  • Zarejestruj oryginalną nazwę folderu (SnapshotCollectorFiles) podczas kopiowania w tle.
  • Skorygowano limity pamięci dla 64-bitowych procesów, aby zapobiec ponownym uruchomieniom lokacji z powodu OOM.
  • Rozwiązano problem polegający na tym, że migawki były nadal zbierane nawet po wyłączeniu.
  • Rejestrowanie zdarzeń pulsu do zasobu sztucznej inteligencji klienta.
  • Ulepszona szybkość migawek przez usunięcie "źródła" z identyfikatora problemu.

1.1.2

Zmiany

  • Rozszerzone dane telemetryczne użycia.
  • Wykrywanie i raportowanie wersji platformy .NET i systemu operacyjnego.
  • Wykrywanie i zgłaszanie większej liczby środowisk platformy Azure (Azure Cloud Services, Azure Service Fabric).
  • Metryki wyjątków rejestrowania i raportowania (liczba wyjątków pierwszej szansy i liczba wywołań) w telemetrii pulsu TrackException .

Poprawki błędów

  • Prawidłowa obsługa tego SqlException , gdzie wyjątek wewnętrzny (Win32Exception) nie jest zgłaszany.
  • Przycięte spacje końcowe w folderach symboli, które spowodowały niepoprawną analizowanie argumentów wiersza polecenia do MinidumpUploaderelementu .
  • Uniemożliwiono nieskończone ponawianie nieudanych połączeń z punktem końcowym agenta debugera migawek.

1.1.0

Zmiany

  • Dodano ochronę pamięci hosta. Ta funkcja zmniejsza wpływ na pamięć maszyny hosta.
  • Ulepszono środowisko wyświetlania migawek w witrynie Azure Portal.