Udostępnij za pośrednictwem


System.Diagnostics Przestrzeń nazw

Udostępnia klasy, które umożliwiają interakcję z procesami systemowymi, dziennikami zdarzeń i licznikami wydajności.

Klasy

Activity

Reprezentuje operację z kontekstem, który ma być używany do rejestrowania.

ActivityListener

Umożliwia nasłuchiwanie zdarzeń uruchamiania i zatrzymywania działań oraz umożliwia podjęcie decyzji o utworzeniu działania na potrzeby scenariuszy próbkowania.

ActivitySource

Udostępnia interfejsy API do tworzenia i uruchamiania obiektów Activity oraz rejestrowania obiektów ActivityListener w celu nasłuchiwania zdarzeń Activity.

ActivityTagsCollection

ActivityTagsCollection to klasa kolekcji używana do przechowywania tagów śledzenia.

Ta kolekcja będzie używana z klasami takimi jak ActivityEvent i ActivityLink.

Ta kolekcja działa w następujący sposób:

  • Elementy kolekcji będą uporządkowane zgodnie z sposobem ich dodawania.
  • Nie zezwalaj na duplikowanie elementów z tym samym kluczem.
  • W przypadku używania indeksatora do przechowywania elementu w kolekcji:
    • Jeśli element ma klucz, który wcześniej istniał w kolekcji, a wartość jest null, element kolekcji pasujący do klucza zostanie usunięty z kolekcji.
    • Jeśli element ma klucz, który wcześniej istniał w kolekcji, a wartość nie jest null, nowa wartość elementu zastąpi starą wartość przechowywaną w kolekcji.
    • W przeciwnym razie element zostanie dodany do kolekcji.
  • Dodaj metodę doda nowy element do kolekcji, jeśli element jeszcze nie istnieje z tym samym kluczem. W przeciwnym razie zgłosi wyjątek.
BooleanSwitch

Zapewnia prosty przełącznik włączania/wyłączania, który steruje debugowaniem i śledzeniem danych wyjściowych.

ConditionalAttribute

Wskazuje kompilatory, że wywołanie metody lub atrybut powinny być ignorowane, chyba że zdefiniowany jest określony symbol kompilacji warunkowej.

ConsoleTraceListener

Kieruje śledzenie lub debugowanie danych wyjściowych do standardowych danych wyjściowych lub standardowego strumienia błędów.

CorrelationManager

Koreluje ślady będące częścią transakcji logicznej.

CounterCreationData

Definiuje typ licznika, nazwę i ciąg Pomocy dla licznika niestandardowego.

CounterCreationDataCollection

Udostępnia silnie typizowany zbiór obiektów CounterCreationData.

CounterSampleCalculator

Udostępnia zestaw funkcji narzędzi do interpretowania danych licznika wydajności.

DataReceivedEventArgs

Dostarcza dane dotyczące zdarzeń OutputDataReceived i ErrorDataReceived.

Debug

Udostępnia zestaw metod i właściwości, które ułatwiają debugowanie kodu.

DebuggableAttribute

Modyfikuje generowanie kodu na potrzeby debugowania just in time (JIT) środowiska uruchomieniowego. Tej klasy nie można dziedziczyć.

Debugger

Umożliwia komunikację z debugerem. Tej klasy nie można dziedziczyć.

DebuggerBrowsableAttribute

Określa, czy element członkowski jest wyświetlany w oknach zmiennych debugera. Tej klasy nie można dziedziczyć.

DebuggerDisableUserUnhandledExceptionsAttribute

Udostępnia klasy, które umożliwiają interakcję z procesami systemowymi, dziennikami zdarzeń i licznikami wydajności.

DebuggerDisplayAttribute

Określa sposób wyświetlania klasy lub pola w oknach zmiennych debugera.

DebuggerHiddenAttribute

Określa DebuggerHiddenAttribute. Tej klasy nie można dziedziczyć.

DebuggerNonUserCodeAttribute

Identyfikuje typ lub element członkowski, który nie jest częścią kodu użytkownika dla aplikacji.

DebuggerStepperBoundaryAttribute

Wskazuje, że kod po atrybucie ma być wykonywany w trybie uruchamiania, a nie kroku.

DebuggerStepThroughAttribute

Instruuje debuger, aby przechodził przez kod zamiast przechodzić do kodu. Tej klasy nie można dziedziczyć.

DebuggerTypeProxyAttribute

Określa wyświetlany serwer proxy dla typu.

DebuggerVisualizerAttribute

Określa, że typ ma wizualizator. Tej klasy nie można dziedziczyć.

DefaultTraceListener

Udostępnia domyślne metody danych wyjściowych i zachowanie śledzenia.

DelimitedListTraceListener

Kieruje śledzenie lub debugowanie danych wyjściowych do składnika zapisywania tekstu, takiego jak składnik zapisywania strumienia lub strumienia, takiego jak strumień plików.

DiagnosticListener

Zapewnia implementację abstrakcyjnej klasy DiagnosticSource, która reprezentuje nazwane miejsce, do którego źródło wysyła informacje (zdarzenia).

DiagnosticListenerExtensions

Udostępnia klasy, które umożliwiają interakcję z procesami systemowymi, dziennikami zdarzeń i licznikami wydajności.

DiagnosticMethodInfo

Reprezentuje informacje diagnostyczne dotyczące metody. Informacje dostarczane przez tę klasę są podobne do informacji

dostarczone przez MethodBase, ale jest przeznaczony do celów rejestrowania i śledzenia.

DiagnosticsConfigurationHandler

Obsługuje sekcję diagnostyki plików konfiguracji.

DiagnosticSource

Abstrakcyjna klasa, która umożliwia instrumentację kodu na potrzeby rejestrowania w czasie produkcyjnym bogatych ładunków danych do użycia w ramach procesu, który został instrumentowany.

DistributedContextPropagator

Implementacja DistributedContextPropagator określa, czy i jak rozproszone informacje kontekstowe są kodowane i dekodowane podczas przechodzenia przez sieć. Kodowanie można transportować za pośrednictwem dowolnego protokołu sieciowego obsługującego pary klucz-wartość ciągu. Na przykład w przypadku korzystania z protokołu HTTP każda para klucz-wartość jest nagłówkiem HTTP. DistributedContextPropagator wprowadza wartości do i wyodrębnia wartości z operatorów jako pary klucz-wartość ciągu.

EntryWrittenEventArgs

Dostarcza dane dla zdarzenia EntryWritten.

EventInstance

Reprezentuje informacje neutralne dla języka dla wpisu dziennika zdarzeń.

EventLog

Zapewnia interakcję z dziennikami zdarzeń systemu Windows.

EventLogEntry

Hermetyzuje pojedynczy rekord w dzienniku zdarzeń. Tej klasy nie można dziedziczyć.

EventLogEntryCollection

Definiuje rozmiar i moduły wyliczania dla kolekcji wystąpień EventLogEntry.

EventLogInstaller

Umożliwia zainstalowanie i skonfigurowanie dziennika zdarzeń, z którego aplikacja odczytuje dane z aplikacji lub zapisuje je podczas uruchamiania.

EventLogPermission

Steruje uprawnieniami dostępu do kodu na potrzeby rejestrowania zdarzeń.

EventLogPermissionAttribute

Umożliwia deklaratywne sprawdzanie uprawnień na potrzeby rejestrowania zdarzeń.

EventLogPermissionEntry

Definiuje najmniejszą jednostkę uprawnienia zabezpieczeń dostępu do kodu ustawioną dla EventLog.

EventLogPermissionEntryCollection

Zawiera silnie typizowana kolekcja obiektów EventLogPermissionEntry.

EventLogTraceListener

Udostępnia prosty odbiornik, który kieruje śledzenie lub debugowanie danych wyjściowych do EventLog.

EventSchemaTraceListener

Kieruje śledzenie lub debugowanie danych wyjściowych zdarzeń end-to-end do pliku dziennika zgodnego ze schematem XML.

EventSourceCreationData

Reprezentuje ustawienia konfiguracji używane do tworzenia źródła dziennika zdarzeń na komputerze lokalnym lub komputerze zdalnym.

EventTypeFilter

Wskazuje, czy odbiornik powinien śledzić na podstawie typu zdarzenia.

FileVersionInfo

Zawiera informacje o wersji pliku fizycznego na dysku.

InitializingSwitchEventArgs

Dostarcza dane dla zdarzenia Switch.Initializing.

InitializingTraceSourceEventArgs

Dostarcza dane dla zdarzenia TraceSource.Initializing.

InstanceData

Przechowuje dane wystąpienia skojarzone z przykładem licznika wydajności.

InstanceDataCollection

Udostępnia silnie typizowany zbiór obiektów InstanceData.

InstanceDataCollectionCollection

Udostępnia silnie typizowany zbiór obiektów InstanceDataCollection.

MonitoringDescriptionAttribute

Określa opis właściwości lub zdarzenia.

PerformanceCounter

Reprezentuje składnik licznika wydajności systemu Windows NT.

PerformanceCounterCategory

Reprezentuje obiekt wydajności, który definiuje kategorię liczników wydajności.

PerformanceCounterInstaller

Określa instalatora składnika PerformanceCounter.

PerformanceCounterManager

Przygotowuje dane wydajności dla performance.dll obciążenia systemu podczas pracy z licznikami wydajności.

PerformanceCounterPermission

Umożliwia kontrolę nad uprawnieniami dostępu do kodu dla PerformanceCounter.

PerformanceCounterPermissionAttribute

Umożliwia deklaratywne sprawdzanie uprawnień licznika wydajności.

PerformanceCounterPermissionEntry

Definiuje najmniejszą jednostkę uprawnienia zabezpieczeń dostępu do kodu ustawioną dla PerformanceCounter.

PerformanceCounterPermissionEntryCollection

Zawiera silnie typizowana kolekcja obiektów PerformanceCounterPermissionEntry.

PresentationTraceSources

Zapewnia obsługę śledzenia debugowania przeznaczonego specjalnie dla aplikacji Windows Presentation Foundation (WPF).

Process

Zapewnia dostęp do procesów lokalnych i zdalnych oraz umożliwia uruchamianie i zatrzymywanie lokalnych procesów systemowych.

ProcessModule

Reprezentuje plik .dll lub .exe, który jest ładowany do określonego procesu.

ProcessModuleCollection

Udostępnia silnie typizowany zbiór obiektów ProcessModule.

ProcessStartInfo

Określa zestaw wartości używanych podczas uruchamiania procesu.

ProcessThread

Reprezentuje wątek procesu systemu operacyjnego.

ProcessThreadCollection

Udostępnia silnie typizowany zbiór obiektów ProcessThread.

SourceFilter

Wskazuje, czy odbiornik powinien śledzić komunikat na podstawie źródła śledzenia.

SourceSwitch

Zapewnia przełącznik wieloszczepowy do śledzenia sterowania i debugowania danych wyjściowych bez ponownego komplikowania kodu.

StackFrame

Zawiera informacje o StackFrame, który reprezentuje wywołanie funkcji w stosie wywołań dla bieżącego wątku.

StackFrameExtensions

Udostępnia metody rozszerzenia dla klasy StackFrame, która reprezentuje wywołanie funkcji w stosie wywołań dla bieżącego wątku.

StackTrace

Reprezentuje ślad stosu, który jest uporządkowaną kolekcją co najmniej jednej ramki stosu.

StackTraceHiddenAttribute

Typy i metody przypisane stackTraceHidden zostaną pominięte z tekstu śledzenia stosu pokazanego w witrynie StackTrace.ToString() i Exception.StackTrace

Stopwatch

Udostępnia zestaw metod i właściwości, których można użyć do dokładnego mierzenia czasu, który upłynął.

Switch

Udostępnia abstrakcyjną klasę bazową do tworzenia nowych przełączników debugowania i śledzenia.

SwitchAttribute

Identyfikuje przełącznik używany w zestawie, klasie lub składowej.

SwitchLevelAttribute

Określa typ poziomu przełącznika.

TextWriterTraceListener

Kieruje śledzenie lub debugowanie danych wyjściowych do TextWriter lub do Stream, takich jak FileStream.

Trace

Udostępnia zestaw metod i właściwości, które ułatwiają śledzenie wykonywania kodu. Tej klasy nie można dziedziczyć.

TraceConfiguration

Udostępnia klasy, które umożliwiają interakcję z procesami systemowymi, dziennikami zdarzeń i licznikami wydajności.

TraceEventCache

Udostępnia dane zdarzenia śledzenia specyficzne dla wątku i procesu.

TraceFilter

Udostępnia klasę bazową na potrzeby implementacji filtrów śledzenia.

TraceListener

Udostępnia abstract klasę bazową dla odbiorników, którzy monitorują dane wyjściowe śledzenia i debugowania.

TraceListenerCollection

Udostępnia bezpieczną wątkowo listę obiektów TraceListener.

TraceSource

Udostępnia zestaw metod i właściwości, które umożliwiają aplikacjom śledzenie wykonywania kodu i kojarzenie komunikatów śledzenia ze źródłem.

TraceSwitch

Zapewnia przełącznik wieloszczepowy do śledzenia sterowania i debugowania danych wyjściowych bez ponownego komplikowania kodu.

UnescapedXmlDiagnosticData

Udostępnia niewyobrażalne dane XML na potrzeby rejestrowania danych śledzenia udostępnianych przez użytkownika.

UnreachableException

Wyjątek zgłaszany, gdy program wykonuje instrukcję, która była uważana za niemożliwą do osiągnięcia.

XmlWriterTraceListener

Kieruje śledzenie lub debugowanie danych wyjściowych jako danych zakodowanych w formacie XML do TextWriter lub do Stream, takich jak FileStream.

Struktury

Activity.Enumerator<T>

Wylicza dane przechowywane w obiekcie Activity.

ActivityChangedEventArgs

Dostarcza dane dla zdarzenia CurrentChanged.

ActivityContext

Reprezentacja zgodna ze specyfikacją TraceContext W3C. Zawiera dwa identyfikatory: TraceId i SpanId wraz z zestawem typowych wartości TraceFlags i tracestate specyficznych dla systemu.

ActivityCreationOptions<T>

Hermetyzuje wszystkie informacje wysyłane do odbiornika działań, aby podejmować decyzje dotyczące tworzenia wystąpienia działania, a także jego stanu.

Możliwe parametry typu ogólnego są ActivityContext lub String.

ActivityEvent

Reprezentuje zdarzenie zawierające nazwę i znacznik czasu, a także opcjonalną listę tagów.

ActivityLink

Działania mogą być połączone z zerem lub większą liczbie wystąpień kontekstu działania, które są związane przyczynowo.

Linki działań mogą wskazywać konteksty działań wewnątrz pojedynczego śledzenia lub w różnych śladach.

Łącza działań mogą służyć do reprezentowania operacji wsadowych, w których działanie zostało zainicjowane przez wiele działań inicjujących, z których każdy reprezentuje pojedynczy element przychodzący przetwarzany w partii.

ActivitySpanId

Reprezentuje SpanId sformatowany na podstawie standardu W3C.

ActivityTagsCollection.Enumerator

Wylicza elementy ActivityTagsCollection.

ActivityTraceId

Reprezentuje TraceId, którego format jest oparty na standardzie W3C.

CounterSample

Definiuje strukturę, która przechowuje nieprzetworzone dane dla licznika wydajności.

Debug.AssertInterpolatedStringHandler

Udostępnia procedurę obsługi ciągów interpolowanych dla Assert(Boolean), która wykonuje formatowanie tylko w przypadku niepowodzenia potwierdzenia.

Debug.WriteIfInterpolatedStringHandler

Udostępnia procedurę obsługi ciągów interpolowanych dla WriteIf(Boolean, String) i WriteLineIf(Boolean, Object), która wykonuje formatowanie tylko w przypadku zastosowania warunku.

TagList

Reprezentuje listę tagów, do których można uzyskać dostęp za pomocą indeksu. Udostępnia metody wyszukiwania, sortowania i manipulowania listami.

TagList.Enumerator

Moduł wyliczający umożliwiający przechodzenie kolekcji listy tagów.

Interfejsy

ICollectData

Przygotowuje dane wydajności dla biblioteki DLL wydajności ładowane przez system podczas pracy z licznikami wydajności.

Wyliczenia

ActivityIdFormat

Określa format właściwości Id.

ActivityKind

Opisuje relację między działaniem, jego rodzicami i dziećmi w śladzie.

ActivitySamplingResult

Wartości wyliczenia używane przez ActivityListener do wskazania ilości danych do zebrania powiązanych Activity. Żądanie większej ilości danych powoduje większe obciążenie związane z wydajnością.

ActivityStatusCode

Zdefiniuj kod stanu działania, który wskazuje stan operacji instrumentowanej.

ActivityTraceFlags

Określa flagi zdefiniowane przez standard W3C, które są skojarzone z działaniem.

DebuggableAttribute.DebuggingModes

Określa tryb debugowania kompilatora just in time (JIT).

DebuggerBrowsableState

Zawiera instrukcje wyświetlania debugera.

EventLogEntryType

Określa typ zdarzenia wpisu dziennika zdarzeń.

EventLogPermissionAccess

Definiuje poziomy dostępu używane przez klasy uprawnień EventLog.

OverflowAction

Określa sposób obsługi wpisów w dzienniku zdarzeń, który osiągnął maksymalny rozmiar pliku.

PerformanceCounterCategoryType

Wskazuje, czy kategoria licznika wydajności może mieć wiele wystąpień.

PerformanceCounterInstanceLifetime

Określa okres istnienia wystąpienia licznika wydajności.

PerformanceCounterPermissionAccess

Definiuje poziomy dostępu używane przez klasy uprawnień PerformanceCounter.

PerformanceCounterType

Określa typy liczników wydajności mapujące bezpośrednio na typy natywne.

PresentationTraceLevel

Opisuje poziom szczegółowości śledzenia określonego obiektu.

ProcessPriorityClass

Wskazuje priorytet, który system kojarzy z procesem. Ta wartość wraz z wartością priorytetu każdego wątku procesu określa poziom priorytetu każdego wątku.

ProcessWindowStyle

Określono sposób wyświetlania nowego okna podczas uruchamiania procesu przez system.

SourceLevels

Określa poziomy komunikatów śledzenia filtrowanych przez przełącznik źródłowy i filtr typu zdarzenia.

ThreadPriorityLevel

Określa poziom priorytetu wątku.

ThreadState

Określa bieżący stan wykonywania wątku.

ThreadWaitReason

Określa przyczynę oczekiwania wątku.

TraceEventType

Określa typ zdarzenia, które spowodowało śledzenie.

TraceLevel

Określa komunikaty wyjściowe dla klas Debug, Trace i TraceSwitch.

TraceLogRetentionOption

Określa strukturę plików, która będzie używana dla dziennika EventSchemaTraceListener.

TraceOptions

Określa opcje danych śledzenia, które mają być zapisywane w danych wyjściowych śledzenia.

Delegaci

DataReceivedEventHandler

Reprezentuje metodę, która będzie obsługiwać zdarzenie OutputDataReceived lub zdarzenie ErrorDataReceivedProcess.

DistributedContextPropagator.PropagatorGetterCallback

Reprezentuje metodę wywołania zwrotnego używaną w metodach wyodrębniania propagatorów. Wywołanie zwrotne jest wywoływane w celu wyszukania wartości nazwanego pola.

DistributedContextPropagator.PropagatorSetterCallback

Reprezentuje metodę wywołania zwrotnego używaną w metodach wstrzykiwania propagatorów. To wywołanie zwrotne jest wywoływane w celu ustawienia wartości nazwanego pola. Propagatory mogą wywoływać je wiele razy w celu ustawienia wielu pól.

EntryWrittenEventHandler

Reprezentuje metodę, która będzie obsługiwać zdarzenie EntryWrittenEventLog.

ExceptionRecorder

Udostępnia klasy, które umożliwiają interakcję z procesami systemowymi, dziennikami zdarzeń i licznikami wydajności.

SampleActivity<T>

Delegat, który definiuje podpis ActivityListener wywołania zwrotnego używanego w procesie próbkowania.

Uwagi

  • Składnik EventLog zapewnia funkcje zapisywania w dziennikach zdarzeń, odczytywania wpisów dziennika zdarzeń oraz tworzenia i usuwania dzienników zdarzeń oraz źródeł zdarzeń w sieci. EntryWrittenEventHandler umożliwia asynchroniczną interakcję z dziennikami zdarzeń. Klasy pomocnicze zapewniają dostęp do bardziej szczegółowej kontroli, w tym: ograniczeń uprawnień, możliwość określania typów dzienników zdarzeń (które sterują typem domyślnych danych zapisywanych za pomocą wpisu dziennika zdarzeń) i iterują przez kolekcje wpisów dziennika zdarzeń. Aby uzyskać więcej informacji na temat tych zadań, zobacz klasy EventLogPermission, EventLogEntryTypei EventLogEntryCollection.

  • Klasa Process zapewnia funkcje monitorowania procesów systemowych w sieci oraz uruchamiania i zatrzymywania lokalnych procesów systemowych. Oprócz pobierania list uruchomionych procesów (przez określenie komputera, nazwy procesu lub identyfikatora procesu) lub wyświetlanie informacji o procesie, który ma obecnie dostęp do procesora, można uzyskać szczegółową wiedzę na temat wątków procesów i modułów zarówno za pośrednictwem klasy Process, jak i interakcji z klasami ProcessThread i ProcessModule. Klasa ProcessStartInfo umożliwia określenie różnych elementów, za pomocą których można rozpocząć nowy proces, takich jak strumienie danych wejściowych, wyjściowych i błędów, katalogi robocze oraz czasowniki i argumenty wiersza polecenia. Zapewniają one precyzyjną kontrolę nad zachowaniem procesów. Inne powiązane klasy umożliwiają określenie stylów okien, priorytetów procesów i wątków oraz interakcję z kolekcjami wątków i modułów.

  • Klasa PerformanceCounter umożliwia monitorowanie wydajności systemu, a klasa PerformanceCounterCategory umożliwia tworzenie nowych liczników niestandardowych i kategorii. Można zapisywać w lokalnych licznikach niestandardowych i odczytywać zarówno z liczników lokalnych, jak i zdalnych (system, a także niestandardowy). Możesz próbkować liczniki przy użyciu klasy PerformanceCounter i obliczać wyniki z kolejnych próbek liczników wydajności przy użyciu klasy CounterSample. Klasa CounterCreationData umożliwia tworzenie wielu liczników w kategorii i określanie ich typów. Inne klasy skojarzone ze składnikiem licznika wydajności zapewniają dostęp do kolekcji liczników, uprawnień liczników i typów liczników.

Przestrzeń nazw System.Diagnostics udostępnia również klasy, które umożliwiają debugowanie aplikacji i śledzenie wykonywania kodu. Aby uzyskać więcej informacji, zobacz klasy Trace i Debug.