Kivételek hibakeresése a .NET-alkalmazásokban a Snapshot Debugger használatával
A Snapshot Debugger használatával automatikusan gyűjthet hibakeresési pillanatképet, ha kivétel történik az élő .NET-alkalmazásban. Az összegyűjtött hibakeresési pillanatképek a forráskód és a változók állapotát mutatják a kivétel kioltásának pillanatában.
Az Alkalmazás pillanatkép-hibakeresője Elemzések:
- Figyeli a rendszer által létrehozott naplókat a webalkalmazásból.
- Pillanatképeket gyűjt a leggyakoribb kivételekkel kapcsolatban.
- Az éles környezetben előforduló problémák diagnosztizálásához szükséges információkat nyújt.
További információ a Snapshot Debugger és a Snapshot Uploader folyamatairól.
Támogatott alkalmazások és környezetek
Ez a szakasz a támogatott alkalmazásokat és környezeteket sorolja fel.
Alkalmazások
A pillanatkép-gyűjtemény a következő célokra érhető el:
- .NET-keretrendszer 4.6.2 és újabb verziók.
- .NET 6.0 vagy újabb Windows rendszeren.
Környezetek
A következő környezetek támogatottak:
- Azure App Service
- Azure Functions
- 4- vagy újabb operációs rendszert futtató Azure Cloud Services
- Windows Server 2012 R2 vagy újabb rendszeren futó Azure Service Fabric
- Windows Server 2012 R2 vagy újabb rendszert futtató Azure-beli virtuális gépek és Azure-beli virtuálisgép-méretezési csoportok
- Windows Server 2012 R2 vagy újabb rendszert vagy Windows 8.1 vagy újabb rendszert futtató helyszíni virtuális vagy fizikai gépek
Feljegyzés
Az ügyfélalkalmazások (például WPF, Windows Forms vagy UWP) nem támogatottak.
A Snapshot Debugger használatának előfeltételei
Csomagok és konfigurációk
- Vegye fel a Snapshot Collector NuGet-csomagot az alkalmazásba.
- Gyűjteményparaméterek konfigurálása a következőben
ApplicationInsights.config
: .
Jogosultságok
- Ellenőrizze, hogy hozzáadta-e az alkalmazás Elemzések Snapshot Debugger szerepkörhöz a célalkalmazás Elemzések pillanatképhez.
A Snapshot Debugger működése
A Snapshot Debugger alkalmazásként Elemzések telemetriai processzorként van implementálva. Az alkalmazás futtatásakor a rendszer hozzáadja a Snapshot Debugger telemetriai processzort az alkalmazás rendszer által létrehozott naplóinak folyamatához.
Fontos
A pillanatképek személyes adatokat vagy más bizalmas információkat tartalmazhatnak változó- és paraméterértékekben. A pillanatképadatok ugyanabban a régióban találhatók, mint az alkalmazás Elemzések erőforrás.
Pillanatkép-hibakereső folyamat
A Snapshot Debugger folyamat a metódussal TrackException
kezdődik és végződik. A folyamat pillanatképe a futó folyamat felfüggesztett klónja, így a felhasználók alig vagy egyáltalán nem tapasztalnak megszakítást.
Az alkalmazás eldobja a
TrackException
.A Snapshot Debugger az eseményre való feliratkozással figyeli a
AppDomain.CurrentDomain.FirstChanceException
kivételeket.A problémaazonosító számlálója növekszik.
- Amikor a számláló eléri az
ThresholdForSnapshotting
értéket, a rendszer hozzáadja a problémaazonosítót egy gyűjteménytervhez.
Feljegyzés
Az
ThresholdForSnapshotting
alapértelmezett minimális érték 1. Ezzel az értékkel az alkalmazásnak kétszer kell aktiválnia ugyanazt a kivételt a pillanatkép létrehozása előtt.- Amikor a számláló eléri az
A kivételesemény problémaazonosítóját a rendszer kiszámítja és összehasonlítja a gyűjteménytervben szereplő problémaazonosítókkal.
Ha egyezés van a problémaazonosítók között, létrejön a futó folyamat pillanatképe .
- A pillanatképhez egyedi azonosító van rendelve, és a kivétel ezzel az azonosítóval van lebélyegzve.
Feljegyzés
A pillanatképek létrehozásának sebességét a
SnapshotsPerTenMinutesLimit
beállítás korlátozza. Alapértelmezés szerint a korlát 10 percenként egy pillanatkép.FirstChanceException
A kezelő visszatérése után a rendszer a kidobott kivételt a szokásos módon dolgozza fel.A kivétel ismét eléri a
TrackException
metódust, és az alkalmazás Elemzések jelenti a pillanatkép-azonosítóval együtt.
Feljegyzés
Állítsa be IsEnabledInDeveloperMode
, true
ha pillanatképeket szeretne létrehozni a Visual Studióban történő hibakeresés során.
Pillanatkép-feltöltő folyamat
Bár a Pillanatkép-hibakereső folyamat továbbra is fut, és kis megszakítással kiszolgálja a forgalmat a felhasználók számára, a pillanatképet a rendszer átadja a Pillanatkép-feltöltő folyamatnak. A pillanatkép-feltöltő:
Létrehoz egy minidumpot.
Feltölti a minidumpot az Alkalmazás Elemzések, valamint a megfelelő szimbólumfájlokat (.pdb).
Feljegyzés
Naponta legfeljebb 50 pillanatkép tölthető fel.
Ha engedélyezte a Pillanatkép-hibakeresőt, de nem lát pillanatképeket, tekintse meg a hibaelhárítási útmutatót.
Korlátozások
Ez a szakasz a Pillanatkép-hibakereső korlátozásait ismerteti.
Adatmegőrzés
A hibakeresési pillanatképek 15 napig vannak tárolva. Az alapértelmezett adatmegőrzési szabályzat alkalmazásonként van beállítva. Ha növelnie kell ezt az értéket, kérhet emelést egy támogatási eset megnyitásával az Azure Portalon. Minden alkalmazás Elemzések példány esetében naponta legfeljebb 50 pillanatkép engedélyezett.
Szimbólumok közzététele
A Pillanatkép-hibakeresőhöz szimbólumfájlok szükségesek az éles kiszolgálón a következőhöz:
- Változók dekódolása
- Hibakeresési élmény biztosítása a Visual Studióban
A Visual Studio 2017 15.2+ verziói alapértelmezés szerint közzéteszik a kiadási buildek szimbólumait az App Service-ben való közzétételkor.
A korábbi verziókban a következő sort kell hozzáadnia a közzétételi profilfájlhoz
.pubxml
, hogy a szimbólumok kiadási módban legyenek közzétéve:<ExcludeGeneratedDebugSymbol>False</ExcludeGeneratedDebugSymbol>
Az Azure Compute és más típusok esetében győződjön meg arról, hogy a szimbólumfájlok a következők:
- A fő alkalmazás
.dll
ugyanazon mappájában (általábanwwwroot/bin
), vagy - Elérhető az aktuális útvonalon.
A különböző szimbólumbeállításokról további információt a Visual Studio dokumentációjában talál. A legjobb eredmény érdekében javasoljuk, hogy a Teljes, a Hordozható vagy a Beágyazott elemet használja.
Optimalizált buildek
Bizonyos esetekben a helyi változók nem tekinthetők meg a kiadási buildekben a JIT-fordító által alkalmazott optimalizálás miatt.
Az App Service-ben azonban a Pillanatkép-hibakereső optimalizálni tudja a gyűjtési terv részét képező dobási módszereket.
Tipp.
Telepítse az Alkalmazás Elemzések webhelybővítményt az App Service-példányban az inoptimizálás támogatásának igénybevételéhez.
Következő lépések
Engedélyezze az alkalmazáshoz Elemzések Pillanatkép-hibakeresőt:
- Azure App Service
- Azure Functions
- Azure Cloud Services
- Azure Service Fabric
- Azure-beli virtuális gépek és virtuálisgép-méretezési csoportok
- Helyszíni virtuális vagy fizikai gépek
Kibocsátási megjegyzések a következőhöz: Microsoft.ApplicationInsights.SnapshotCollector
Ez a szakasz a .NET-alkalmazások NuGet-csomagjának kibocsátási megjegyzéseit Microsoft.ApplicationInsights.SnapshotCollector
tartalmazza, amelyeket az alkalmazás Elemzések Snapshot Debugger használ.
További információ a .NET-alkalmazások alkalmazás Elemzések pillanatkép-hibakeresőjéről.
Hibajelentések és visszajelzések esetén nyisson meg egy hibát a GitHubon.
Feljegyzés
2025. március 31-én megszűnik az eszközkulcsalapú betöltés támogatása. A rendszerállapot-kulcsok betöltése továbbra is működni fog, de a továbbiakban nem biztosítunk frissítéseket vagy támogatást a funkcióhoz. Váltás kapcsolati sztring az új képességek kihasználásához.
1.4.6
Pontkiadás a regresszió kezelésére .NET 8-alkalmazások használatakor.
Hibajavítások
- A dinamikusan létrehozott metódusok (pl. lefordított kifejezésfák) által a .NET 8-ban bevezetett kivételek nem megfelelően vannak nyomon követve. Rögzített.
1.4.5
Pontkiadás a felhasználó által jelentett hiba elhárításához.
Hibajavítások
- Kijavítottuk az AccessViolationException hibát egyes PDF-fájlok olvasásakor.
Változások
- ReadMe-et adott hozzá a NuGet-csomaghoz.
- Frissített msdia140.dll.
1.4.4
Pontkiadás a felhasználó által jelentett hibák elhárításához.
Hibajavítások
Változások
- A PDB-vizsgálat sikertelen üzenetei a Hiba helyről a Figyelmeztetésre csökkentve.
- Frissített msdia140.dll.
- Ne létesítsen szolgáltatáskapcsolatot, ha a hibakereső le van tiltva a webhelybővítmény beállításaival.
1.4.3
Pontkiadás a felhasználó által jelentett hibák elhárításához.
Hibajavítások
- Kijavítva az IMDS-függőség elrejtése a függőségfigyelőből.
- Rögzített ArgumentumException: a telemetryProcessorTypedoes nem implementálja az ITelemetryProcessor..
Az SDK-val használt pillanatkép-gyűjtő nem támogatott, ha az Interop funkció engedélyezve van. Lásd: További nem támogatott forgatókönyvek.
1.4.2
Pontkiadás a felhasználó által jelentett hiba elhárításához.
Hibajavítások
Rögzített Argumentumexception: A meghatalmazottaknak azonos típusúnak kell lenniük.
1.4.1
Pontkiadás az 1.4.0-s verzióban bevezetett kompatibilitástörő változás visszaállításához.
Hibajavítások
A Rögzített metódus nem található a WebJobsban.
1.4.0
Több fejlesztéssel és a Microsoft Entra-hitelesítés alkalmazás-Elemzések-betöltéshez való támogatásával is foglalkozott.
Változások
- A Snapshot Collector csomagmérete 60%-kal csökkent 10,34 MB-ról 4,11 MB-ra.
- Célzott netstandard2.0 csak a Snapshot Collectorben.
- Az ütköző alkalmazás Elemzések SDK-függőség 2.15.0-ra.
- A memóriaképek írásakor újra hozzáadva
MinidumpWithThreadInfo
. - Hozzáadva
CompatibilityVersion
a Pillanatkép-gyűjtő ügynök és a Pillanatkép-feltöltő közötti szinkronizálás javításához a kompatibilitástörő változások esetén. SnapshotUploader
Módosította a LogFile elnevezési algoritmust, hogy elkerülje a túlzott fájl-I/O-t az App Service-ben.- Hozzáadva
pid
,role name
ésprocess start time
a feltöltött blob metaadataihoz. - A Pillanatkép-gyűjtőben és a Pillanatkép-feltöltőben használatos
System.Diagnostics.Process
.
Új funkciók
Hozzáadta a Microsoft Entra-hitelesítést a programhoz SnapshotCollector
. Ha többet szeretne megtudni a Microsoft Entra-hitelesítésről az Application Elemzések-ban, tekintse meg a Microsoft Entra-hitelesítés alkalmazás Elemzések című témakört.
1.3.7.5
Egy pontkiadás, amely az 1.4.0-pre verzióról küldi vissza a javítást.
Hibajavítások
A leállításkor kijavítottuk az ObjectDisposedException hibát.
1.3.7.4
Pontkiadás az App Service kód nélküli csatolási forgatókönyvének tesztelése során felfedezett probléma megoldásához.
Változások
A netcoreapp3.0
cél most a = 2.1.1 (korábban >= 2.1.2) értéktől függMicrosoft.ApplicationInsights.AspNetCore
>.
1.3.7.3
Pontkiadás néhány nagy hatású probléma megoldásához.
Hibajavítások
- Kijavítottuk a PDB-felderítést a wwwroot/bin mappában, amely megszakadt, amikor módosítottuk a szimbólumkeresési algoritmust az 1.3.6-ban.
- Kijavítottuk a telemetria zaját
ExtractWasCalledMultipleTimesException
.
1.3.7
Változások
A netcoreapp2.0
cél az SnapshotCollector
= 2.1.1 (ismét) függvénytől Microsoft.ApplicationInsights.AspNetCore
>függ. Ez a módosítás visszaállítja a viselkedést az 1.3.5 előtti állapotra. Megpróbáltuk frissíteni az 1.3.6-os verzióban, de néhány App Service-forgatókönyvet eltört.
Új funkciók
A Pillanatkép-gyűjtő beolvassa és elemzi a ConnectionString
APPLICATIONINSIGHTS_CONNECTION_STRING környezeti változóból vagy a TelemetryConfiguration
. Elsősorban a Snapshot szolgáltatáshoz való csatlakozás végpontjának beállítására szolgál. További információkért tekintse meg a Csatlakozás ion sztringek dokumentációját.
Hibajavítások
Át lett kapcsolva az összes cél használatára HttpClient
, kivéve net45
, hogy WebRequest
egyes környezetekben nem kompatibilis SecurityProtocol
(tLS 1.2-t igényel).
1.3.6
Változások
SnapshotCollector
mostantól az összes cél keretrendszer esetében aMicrosoft.ApplicationInsights
>= 2.5.1 függvénytől függ. Ez a követelmény kompatibilitástörő változás lehet, ha az alkalmazás a Microsoft.Application egy régebbi verziójától Elemzések SDK-tól függ.- A TLS 1.0 és 1.1 támogatása megszűnt a Snapshot Uploaderben.
- A PDB-vizsgálatok időtartama mostantól 15 perc helyett 24 óra. Konfigurálható a
PdbRescanInterval
bekapcsolvaSnapshotCollectorConfiguration
. - A PDB-vizsgálat csak a legfelső szintű mappákban keres rekurzív helyett. Ez a változás kompatibilitástörő változás lehet, ha a szimbólumok a bináris mappa almappáiban találhatók.
Új funkciók
- Naplóforgatás be,
SnapshotUploader
hogy ne töltse ki a naplók mappát régi fájlokkal. - A .NET Core 3.0-alkalmazások inoptimizálási támogatása (a ReJIT-en keresztül csatolva).
- Szimbólumok hozzáadva a NuGet-csomaghoz.
- További metaadatok beállítása minidump-fájlok feltöltésekor.
- Hozzáadtunk egy tulajdonságot a.
Initialized /> parancshoz SnapshotCollectorTelemetryProcessor
. Ez egyCancellationToken
, a pillanatkép-gyűjtő inicializálásakor és a szolgáltatásvégponthoz való csatlakozáskor megszakad. - A dinamikusan létrehozott metódusok kivételeinek pillanatképei mostantól rögzíthetők. Ilyen például az Entity Framework-lekérdezések által létrehozott lefordított kifejezésfák.
Hibajavítások
AmbiguousMatchException
Pillanatkép-gyűjtő betöltése az Állapotfigyelő miatt.GetSnapshotCollector
bővítménymetódus mostantól az összesbenTelemetrySinks
keres.- Ne indítsa el a pillanatkép-feltöltőt nem támogatott platformokon.
- Kezelje
InvalidOperationException
a dinamikus metódusok (például az Entity Framework) inoptimizálását.
1.3.5
- A szuverén felhők támogatása (a régebbi verziók nem működnek szuverén felhőkben).
- A Pillanatkép-gyűjtő hozzáadása a használatával
AddSnapshotCollector()
egyszerűbbé vált. További információ: Pillanatkép-hibakereső engedélyezése .NET-alkalmazásokhoz Azure-alkalmazás Szolgáltatásban. - A blobblokkok ellenőrzéséhez használja a FISMA MD5 beállítást. Ez a beállítás elkerüli az alapértelmezett .NET MD5 titkosítási algoritmust, amely nem érhető el, ha az operációs rendszer FIPS-kompatibilis üzemmódra van állítva.
- A függvényhívások optimalizálása során figyelmen kívül hagyja .NET-keretrendszer kereteket. Ezt a viselkedést a
DeoptimizeIgnoredModules
konfigurációs beállítással szabályozhatja. - Hozzáadta a
DeoptimizeMethodCount
konfigurációs beállítást, amely lehetővé teszi egynél több függvényhívás deoptimizálását.
1.3.4
- Engedélyezett strukturált rendszerállapot-kulcsok.
- Nagyobb pillanatkép-feltöltő robusztusság. Akkor is folytassa az indítást, ha a régi feltöltési naplókat nem lehet áthelyezni.
- Ha SnapshotUploader.exe azonnal kilép, több telemetriát jelent újra (az 1.3.3-ban le lett tiltva).
- Egyszerűsített belső telemetria.
- Kísérleti funkció: Snappoint-gyűjteménycsomagok: Hozzáadás
snapshotOnFirstOccurence
. További információkért tekintse meg ezt a GitHub-cikket.
1.3.3
Kijavítottuk azt a hibát, amely miatt SnapshotUploader.exe nem válaszolt, és nem töltött fel pillanatképeket a .NET Core-alkalmazásokhoz.
1.3.2
- Kísérleti funkció: Snappoint-gyűjteménycsomagok. További információkért tekintse meg ezt a GitHub-cikket.
- SnapshotUploader.exe kilép, amikor a futtatókörnyezet kiüríti a
AppDomain
SnapshotCollector
betöltendő elemet, ahelyett, hogy a folyamat kilépésére várna. Ez a művelet javítja a gyűjtő megbízhatóságát az IIS-ben való üzemeltetéskor. - Konfigurálás hozzáadva, amely lehetővé teszi több
SnapshotCollector
olyan példány számára, amelyek ugyanazt a rendszerállapot-kulcsot használják ugyanazonSnapshotUploader
a folyamaton:ShareUploaderProcess
(alapértelmezés szerint).true
- További telemetriai adatokat jelentett, amikor SnapshotUploader.exe azonnal kilép.
- Csökkentette azon támogatási fájlok számát, SnapshotUploader.exe lemezre kell írnia.
1.3.1
- Az RtlCloneUserProcess API-val eltávolítottuk a pillanatképek gyűjtésének támogatását, és csak a PssCaptureSnapshots API-t támogatjuk.
- Növelte az alapértelmezett korlátot arra vonatkozóan, hogy hány pillanatkép rögzíthető 10 perc alatt egyről háromra.
- A TLS 1.1 és 1.2 egyeztetésének engedélyezése SnapshotUploader.exe számára.
- További telemetriai adatokat jelentett, amikor
SnapshotUploader
figyelmeztetést vagy hibát naplóz. - Állítsa le a pillanatképek készítését, amikor a háttérszolgáltatás jelentése szerint elérte a napi kvótát (napi 50 pillanatkép).
- További beadási SnapshotUploader.exe hozzáadva, hogy ne engedélyezze két példány egyidejű futtatását.
1.3.0
Változások
- A .NET-keretrendszer megcélzott alkalmazások esetében a Pillanatkép-gyűjtő mostantól a Microsoft.Application Elemzések 2.3.0-s vagy újabb verziójától függ. Korábban 2.2.0-s vagy újabb volt. Úgy gondoljuk, hogy ez a változás a legtöbb alkalmazás esetében nem jelent problémát. Tudassa velünk, hogy ez a módosítás megakadályozza-e a legújabb Pillanatkép-gyűjtő használatát.
- A sikertelen feltöltések újrapróbálkozásakor exponenciális visszalépési késleltetést használjon a pillanatkép-feltöltőben.
- Használja
ServerTelemetryChannel
(ha van ilyen) a telemetriai adatok megbízhatóbb jelentéséhez. - Használja
SdkInternalOperationsMonitor
a Snapshot Debugger szolgáltatással való kezdeti kapcsolaton, hogy a függőségkövetés figyelmen kívül hagyja. - Továbbfejlesztett telemetriai adatok a Snapshot Debuggerhez való kezdeti kapcsolat körül.
- További telemetriai adatok jelentése a következőhöz:
- App Service-verzió.
- Azure számítási példányok.
- Ezek pedig a tárolók.
- Azure Functions-alkalmazás.
Hibajavítások
- Ha a problémaszámláló alaphelyzetbe állítási időköze 24 napra van állítva, ezt 24 óraként értelmezze.
- Kijavítottunk egy hibát, amely miatt a pillanatkép-feltöltő leállítja az új pillanatképek feldolgozását, ha kivétel történt a pillanatképek törlése közben.
1.2.3
Kijavítottuk az erős névaláírást a Snapshot Uploader bináris fájljaival.
1.2.2
Változások
- A SnapshotUploader(64).exe fájljai mostantól erőforrásként vannak beágyazva a fő DLL-be. Ez azt jelenti, hogy a
SnapshotCollectorFiles
mappa már nem jön létre, ami leegyszerűsíti a buildelést és az üzembe helyezést, és csökkenti a Megoldáskezelő zsúfoltságát. A fájl módosításainak.csproj
áttekintéséhez ügyeljen a frissítésre. AMicrosoft.ApplicationInsights.SnapshotCollector.targets
fájlra már nincs szükség. - A rendszer akkor is naplózza a telemetriát az alkalmazás Elemzések erőforrásba, ha
ProvideAnonymousTelemetry
hamis értékre van állítva. Ez a módosítás lehetővé teszi egy állapot-ellenőrzési funkció implementálását az Azure Portalon.ProvideAnonymousTelemetry
csak a Terméktámogatás és -fejlesztés céljából a Microsoftnak küldött telemetriát érinti. - Ha
TempFolder
a rendszer környezeti változókra irányítja át aShadowCopyFolder
rendszer, tartsa tétlen állapotban a gyűjtőt, amíg be nem állítja ezeket a környezeti változókat. - A proxykiszolgálón keresztül az internethez csatlakozó alkalmazások esetében a Snapshot Collector automatikusan észleli a proxybeállításokat, és átadja őket a SnapshotUploader.exe.
- Csökkentse a folyamat prioritását
SnapshotUploader
(ahol lehetséges). Ezt a prioritást felül lehet bírálni aIsLowPrioirtySnapshotUploader
beállítással. - Hozzáadtunk egy
GetSnapshotCollector
bővítménymetódustTelemetryConfiguration
olyan forgatókönyvekhez, ahol programozott módon szeretné konfigurálni a Pillanatkép-gyűjtőt. - Állítsa be az alkalmazás Elemzések SDK-verziót (az alkalmazásverzió helyett) az ügyféloldali telemetriában.
- Küldje el az első szívverési eseményt két perc után.
Hibajavítások
- Ki lett javítva
NullReferenceException
, ha a kivételek null értékű vagy nem módosítható adatszótárakat tartalmaz. - A feltöltőben próbálkozzon újra néhány alkalommal a PDB-vel egyezően, ha megosztási szabálysértést kapunk.
- Javítsa ki az ismétlődő telemetriát, ha egynél több szál hív meg a telemetriai folyamatba indításkor.
1.2.1
Változások
- Az XML-dokumentum megjegyzésfájljai mostantól a NuGet-csomag részét képezik.
- Bővítménymetódus
System.Exception
lettExcludeFromSnapshotting
hozzáadva olyan forgatókönyvekhez, amelyekben tudja, hogy zajos kivétel van, és el szeretné kerülni a pillanatképek létrehozását. - Hozzáadtunk egy
IsEnabledWhenProfiling
olyan konfigurációs tulajdonságot, amely alapértelmezés szerint igaz. Ez a korábbi verziókhoz képest olyan változás, amelyben a pillanatképek létrehozása ideiglenesen le lett tiltva, ha az alkalmazás Elemzések Profiler részletes gyűjteményt végzett. A régi viselkedés a tulajdonságfalse
beállításával helyreállítható.
Hibajavítások
- Írja alá SnapshotUploader64.exe megfelelően.
- Védelem a telemetriai processzor dupla inicializálása ellen.
- A telemetriai adatok kettős naplózásának megakadályozása több folyamattal rendelkező alkalmazásokban.
- Kijavítottunk egy hibát a gyűjteményterv lejárati idejével, amely 24 óra után megakadályozta a pillanatképek rögzítését.
1.2.0
A legnagyobb változás ebben a verzióban (ezért az új alverziószámra való áttérés) a pillanatkép-létrehozási és -kezelési folyamat újraírása. A korábbi verziókban ez a funkció natív kódban (ProductionBreakpoints.dll* és SnapshotHolder.exe*) lett implementálva. Az új implementáció az összes felügyelt kód P/Invokes használatával.
Az új folyamatot használó első verzió esetében nem tértünk el messze az eredeti viselkedéstől. Az új implementáció jobb hibajelentést tesz lehetővé, és további fejlesztéseket tesz lehetővé.
A verzió egyéb módosításai
- MinidumpUploader.exe átnevezték SnapshotUploader.exe (vagy SnapshotUploader64.exe) névre.
- Időzítési telemetria hozzáadva a deOptimize/ReOptimize kérésekhez.
- Gzip-tömörítés hozzáadva a minidump feltöltésekhez.
- Kijavítottunk egy hibát, amely miatt a PDF-fájlok zárolva voltak, megakadályozva a webhely frissítését.
- Árnyékmásoláskor naplózza az eredeti mappanevet (SnapshotCollectorFiles).
- A 64 bites folyamatokhoz beállított memóriakorlátok az OOM miatt a hely újraindításának megakadályozása érdekében.
- Kijavítottunk egy hibát, amely miatt a pillanatképek még a letiltás után is gyűjtöttek.
- Szívverési események naplózása az ügyfél AI-erőforrásában.
- Továbbfejlesztett pillanatkép-sebesség a "Forrás" problémaazonosítóból való eltávolításával.
1.1.2
Változások
- Kibővített használati telemetria.
- .NET-verzió és operációs rendszer észlelése és jelentése.
- További Azure-környezetek észlelése és jelentése (Azure Cloud Services, Azure Service Fabric).
- Rekord- és jelentéskivételi metrikák (az első esélyű kivételek száma és a hívások száma
TrackException
) a Szívverés telemetriában.
Hibajavítások
- A belső kivétel (Win32Exception) helyének
SqlException
helyes kezelése. - Levágott záró szóközök a szimbólummappákon, ami a parancssori argumentumok helytelen elemzését okozta a
MinidumpUploader
. - Megakadályozta a Snapshot Debugger-ügynök végpontjával létesített sikertelen kapcsolatok végtelen újrapróbálkozását.
1.1.0
Változások
- Gazdamemória-védelemmel bővült. Ez a funkció csökkenti a gazdagép memóriájára gyakorolt hatást.
- Továbbfejlesztettük az Azure Portal pillanatkép-megtekintési élményét.