Známí poskytovatelé událostí v .NET

Modul runtime .NET a knihovny zapisují diagnostické události prostřednictvím řady různých zprostředkovatelů událostí. V závislosti na vašich diagnostických potřebách můžete zvolit vhodné poskytovatele, které chcete povolit. Tento článek popisuje některé z nejčastěji používaných zprostředkovatelů událostí v modulu runtime a knihovnách .NET.

CoreCLR

Zprostředkovatel Microsoft-Windows-DotNETRuntime

Tento zprostředkovatel generuje různé události z modulu runtime .NET, včetně GC, zavaděče, JIT, výjimky a dalších událostí. Další informace o jednotlivých událostech od tohoto zprostředkovatele najdete v seznamu událostí zprostředkovatele modulu runtime.

Zprostředkovatel Microsoft-DotNETCore-SampleProfiler

Tento zprostředkovatel je zprostředkovatel událostí modulu runtime .NET, který se používá pro vzorkování procesoru pro spravované zásobníky volání. Když je tato možnost povolená, zachytí snímek spravovaného volání každého vlákna při každém milisekundách. Chcete-li povolit toto zachycení, je nutné zadat hodnotu EventLevelInformational nebo vyšší.

Knihovny architektury

Zprostředkovatel Microsoft-Extensions-DependencyInjection

Tento zprostředkovatel zaznamenává informace z DependencyInjection. Následující tabulka uvádí události protokolované poskytovatelem Microsoft-Extensions-DependencyInjection :

Název události Klíčové slovo Level Popis
CallSiteBuilt Podrobná (5) Byl vytvořen web volání.
ServiceResolved Podrobná (5) Služba byla vyřešena.
ExpressionTreeGenerated Podrobná (5) Vygeneroval se strom výrazů.
DynamicMethodBuilt Podrobná (5) Byla DynamicMethod postavena.
ScopeDisposed Podrobná (5) Obor byl uvolněn.
ServiceRealizationFailed Podrobná (5) Realizace služby se nezdařila.
ServiceProviderBuilt ServiceProviderInitialized(0x1) Podrobná (5) Byla ServiceProvider postavena.
ServiceProviderDescriptors ServiceProviderInitialized(0x1) Podrobná (5) Seznam ServiceDescriptor , který byl použit během ServiceProvider sestavení.

Zprostředkovatel System.Buffers.ArrayPoolEventSource

Tento zprostředkovatel protokoluje informace z Fondu polí. V následující tabulce jsou uvedeny události protokolované ArrayPoolEventSourcepodle:

Název události Level Popis
BufferRented Podrobná (5) Vyrovnávací paměť se úspěšně pronajímá.
BufferAllocated Informační (4) Fond přidělí vyrovnávací paměť.
BufferReturned Podrobná (5) Do fondu se vrátí vyrovnávací paměť.
BufferTrimmed Informační (4) Vyrovnávací paměť se pokouší uvolnit kvůli zatížení paměti nebo nečinnosti.
BufferTrimPoll Informační (4) Probíhá kontrola oříznutí vyrovnávacích pamětí.
BufferDropped Informační (4) Vyrovnávací paměť se po návratu do fondu zahodí.

Zprostředkovatel System.Net.Http

Tento poskytovatel protokoluje informace ze zásobníku HTTP. Následující tabulka uvádí události protokolované poskytovatelem System.Net.Http :

Název události Level Popis
RequestStart Informační (4) Spustil se požadavek HTTP.
RequestStop Informační (4) Požadavek HTTP byl dokončen.
Požadavek se nezdařil. Chyba (2) Požadavek HTTP se nezdařil.
Připojení ionEstablished Informační (4) Bylo vytvořeno připojení HTTP.
Připojení ionClosed Informační (4) Připojení HTTP bylo uzavřeno.
RequestLeftQueue Informační (4) Požadavek HTTP opustil frontu požadavků.
RequestHeadersStart Informační (4) Spustil se požadavek HTTP na hlavičku.
RequestHeaderStop Informační (4) Požadavek HTTP na hlavičku byl dokončen.
RequestContentStart Informační (4) Spustil se požadavek HTTP na obsah.
RequestContentStop Informační (4) Požadavek HTTP na obsah byl dokončen.
ResponseHeadersStart Informační (4) Spustila se odpověď HTTP pro hlavičku.
ResponseHeaderStop Informační (4) Odpověď HTTP pro hlavičku byla dokončena.
ResponseContentStart Informační (4) Spustila se odpověď HTTP pro obsah.
ResponseContentStop Informační (4) Odpověď HTTP pro obsah byla dokončena.

Zprostředkovatel System.Net.NameResolution

Tento poskytovatel zaznamenává informace týkající se překladu názvů domén. V následující tabulce jsou uvedeny události protokolované System.Net.NameResolutionpodle:

Název události Level Popis
ResolutionStart Informační (4) Spustilo se překlad názvů domén.
ResolutionStop Informační (4) Překlad názvů domén byl dokončen.
ResolutionFailed Informační (4) Překlad názvů domén se nezdařil.

Zprostředkovatel System.Net.Sockets

Tento poskytovatel protokoluje informace z Socket. Následující tabulka uvádí události protokolované poskytovatelem System.Net.Sockets :

Název události Level Popis
ConnectStart Informační (4) Spustil se pokus o spuštění připojení soketu.
ConnectStop Informační (4) Pokus o spuštění připojení soketu byl dokončen.
ConnectFailed Informační (4) Pokus o spuštění připojení soketu se nezdařil.
AcceptStart Informační (4) Spustil se pokus o přijetí připojení soketu.
AcceptStop Informační (4) Byl dokončen pokus o přijetí připojení soketu.
AcceptFailed Informační (4) Pokus o přijetí připojení soketu se nezdařil.

Zprostředkovatel System.Threading.Tasks.TplEventSource

Tento zprostředkovatel zaznamenává informace o paralelní knihovně úloh, jako jsou události plánovače úloh. V následující tabulce jsou uvedeny události protokolované TplEventSourcepodle:

Název události Klíčové slovo Level Popis
TaskScheduled TaskTransfer(0x1)

Tasks(0x2)
Informační (4) A Task se zařadí do fronty plánovači úloh.
TaskStarted Tasks(0x2) Informační (4) Spustil se A Task .
TaskCompleted TaskStops(0x40) Informační (4) Dokončilo Task se provádění.
TaskWaitBegin TaskTransfer(0x1)

TaskWait(0x2)
Informační (4) Aktivuje se, když se spustí implicitní nebo explicitní čekání na Task dokončení.
TaskWaitEnd Tasks(0x2) Podrobná (5) Aktivuje se, když se vrátí čekání na Task dokončení.
TaskWaitContinuationStarted Tasks(0x2) Podrobná (5) Aktivuje se, když se spustí práce (metoda) přidružená k nějakému.TaskWaitEnd
TaskWaitContinuationCompleted TaskStops(0x40) Podrobná (5) Aktivuje se při dokončení práce (metody) přidružené k sadě TaskWaitEnd .
AwaitTaskContinuationScheduled TaskTransfer(0x1)

Tasks(0x2)
Informační (4) Aktivuje se, když je naplánované asynchronní pokračování.Task

ASP.NET Core

ASP.NET Core také poskytuje několik událostí, které vám pomůžou diagnostikovat problémy v zásobníku ASP.NET Core.

Další informace o událostech v ASP.NET Core a jejich využití najdete v tématu Protokolování v .NET Core a ASP.NET Core.

Entity Framework Core

EF Core také poskytuje události, které vám pomůžou s diagnostikou problémů v EF Core.

Další informace o událostech v EF Core a jejich využití najdete v tématu Události .NET v EF Core.