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 do użycia na potrzeby rejestrowania.

ActivityListener

Umożliwia nasłuchiwanie zdarzeń uruchamiania i zatrzymywania działań oraz pozwala tworzyć działania na potrzeby scenariuszy próbkowania.

ActivitySource

Udostępnia interfejsy API do tworzenia i uruchamiania Activity obiektów oraz rejestrowania ActivityListener obiektów 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 są porządkowane zgodnie ze sposobem ich dodawania.
  • Nie jest dozwolone 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ść to 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 nulljest , nowa wartość elementu zastąpi starą wartość przechowywaną w kolekcji.
    • W przeciwnym razie element zostanie dodany do kolekcji.
  • Metoda Add doda nowy element do kolekcji, jeśli nie istnieje jeszcze element z tym samym kluczem. W przeciwnym razie zgłosi wyjątek.
BooleanSwitch

Udostępnia prosty przełącznik (włączanie/wyłączanie), który steruje debugowaniem i śledzeniem danych wyjściowych.

ConditionalAttribute

Wskazuje kompilatorom, że należy zignorować wywołanie metody lub atrybut, chyba że zdefiniowano określony symbol kompilacji warunkowej.

ConsoleTraceListener

Kieruje dane wyjściowe śledzenia lub debugowania do standardowego strumienia danych wyjściowych lub błędów.

CorrelationManager

Koreluje ślady, które są częścią transakcji logicznej.

CounterCreationData

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

CounterCreationDataCollection

Udostępnia silnie typizowane kolekcje CounterCreationData obiektów.

CounterSampleCalculator

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

DataReceivedEventArgs

Udostępnia dane dla zdarzeń OutputDataReceived i ErrorDataReceived .

Debug

Udostępnia zestaw metod i właściwości pomagających w debugowaniu kodu.

DebuggableAttribute

Modyfikuje generowanie kodu na potrzeby debugowania just in time (JIT) środowiska uruchomieniowego. Klasa ta nie może być dziedziczona.

Debugger

Umożliwia komunikację z debugerem. Klasa ta nie może być dziedziczona.

DebuggerBrowsableAttribute

Określa, czy element członkowski jest wyświetlany w oknach zmiennych debugera. Klasa ta nie może być dziedziczona.

DebuggerDisplayAttribute

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

DebuggerHiddenAttribute

Określa element DebuggerHiddenAttribute. Klasa ta nie może być dziedziczona.

DebuggerNonUserCodeAttribute

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

DebuggerStepperBoundaryAttribute

Wskazuje, że kod występujący po atrybucie ma być wykonywany w trybie ciągłym, a nie krokowym.

DebuggerStepThroughAttribute

Wskazuje debugerowi, aby podczas wykonywania krokowego przechodził przez kod zamiast wchodzić do niego. Klasa ta nie może być dziedziczona.

DebuggerTypeProxyAttribute

Określa wyświetlany element proxy dla typu.

DebuggerVisualizerAttribute

Określa, że typ ma wizualizator. Klasa ta nie może być dziedziczona.

DefaultTraceListener

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

DelimitedListTraceListener

Kieruje dane wyjściowe śledzenia lub debugowania do składnika zapisywania tekstu, takiego jak składnik zapisywania strumienia, albo do strumienia, takiego jak strumień pliku.

DiagnosticListener

Zapewnia implementację klasy abstrakcyjnej 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.

DiagnosticsConfigurationHandler

Obsługuje sekcję diagnostyki plików konfiguracji.

DiagnosticSource

Klasa abstrakcyjna, która umożliwia instrumentację kodu na potrzeby rejestrowania zaawansowanych ładunków danych w czasie produkcyjnym do użycia w ramach instrumentowanego procesu.

DistributedContextPropagator

Implementacja DistributedContextPropagator określa, czy i jak rozproszone informacje kontekstowe są kodowane i dekodowane podczas przechodzenia przez sieć. Kodowanie można przekazywać za pośrednictwem dowolnego protokołu sieciowego obsługującego pary klucz-wartość w postaci ciągów. 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

Udostępnia 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ń. Klasa ta nie może być dziedziczona.

EventLogEntryCollection

Definiuje rozmiar i wyliczacze dla kolekcji EventLogEntry wystąpień.

EventLogInstaller

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

EventLogPermission

Kontroluje uprawnienia 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 ustawionego dla elementu EventLog.

EventLogPermissionEntryCollection

Zawiera silnie typizowane kolekcje EventLogPermissionEntry obiektów.

EventLogTraceListener

Udostępnia prosty odbiornik kierujący śledzenie lub debugowanie danych wyjściowych do elementu EventLog.

EventSchemaTraceListener

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

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 zdarzenia Switch.Initializing .

InitializingTraceSourceEventArgs

Dostarcza dane zdarzenia TraceSource.Initializing .

InstanceData

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

InstanceDataCollection

Zawiera silnie typizowana kolekcja InstanceData obiektów.

InstanceDataCollectionCollection

Zawiera silnie typizowana kolekcja InstanceDataCollection obiektów.

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ę uprawnień dostępu do kodu dla programu PerformanceCounter.

PerformanceCounterPermissionAttribute

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

PerformanceCounterPermissionEntry

Definiuje najmniejszą jednostkę uprawnienia zabezpieczeń dostępu kodu ustawionego dla elementu PerformanceCounter.

PerformanceCounterPermissionEntryCollection

Zawiera silnie typizowana kolekcja PerformanceCounterPermissionEntry obiektów.

PresentationTraceSources

Zapewnia obsługę śledzenia debugowania, która jest przeznaczona specjalnie dla aplikacji Windows Presentation Foundation (WPF).

Process

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

ProcessModule

Reprezentuje plik dll lub exe załadowany do określonego procesu.

ProcessModuleCollection

Zawiera silnie typizowana kolekcja ProcessModule obiektów.

ProcessStartInfo

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

ProcessThread

Reprezentuje wątek procesu systemu operacyjnego.

ProcessThreadCollection

Zawiera silnie typizowana kolekcja ProcessThread obiektów.

SourceFilter

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

SourceSwitch

Udostępnia wielopoziomowy przełącznik do sterowania śledzeniem i debugowania danych wyjściowych bez ponownego kompilowania kodu.

StackFrame

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

StackFrameExtensions

Udostępnia metody rozszerzenia dla StackFrame klasy, 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ą zawierającą co najmniej jedną ramkę stosu.

StackTraceHiddenAttribute

Typy i metody z atrybutem StackTraceHidden zostaną pominięte w tekście śledzenia stosu pokazywanym w metodzie StackTrace.ToString() i elemencie Exception.StackTrace

Stopwatch

Udostępnia zestaw metod i właściwości, których można używać do dokładnego mierzenia czasu, jaki 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 elementu TextWriter lub do Streamelementu , takiego jak FileStream.

Trace

Zawiera zestaw metod i właściwości, które ułatwiają śledzenie wykonywania kodu. Klasa ta nie może być dziedziczona.

TraceConfiguration

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

TraceEventCache

Dostarcza dane zdarzenia śledzenia specyficzne dla wątku i procesu.

TraceFilter

Udostępnia klasę bazową dla implementacji filtru śledzenia.

TraceListener

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

TraceListenerCollection

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

TraceSource

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

TraceSwitch

Udostępnia wielopoziomowy przełącznik do sterowania śledzeniem i debugowania danych wyjściowych bez ponownego kompilowania kodu.

UnescapedXmlDiagnosticData

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

UnreachableException

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

XmlWriterTraceListener

Kieruje śledzenie lub debugowanie danych wyjściowych jako dane zakodowane w formacie XML do obiektu TextWriter lub do Streamobiektu , takiego jak FileStream.

Struktury

Activity.Enumerator<T>

Wylicza dane przechowywane w Activity obiekcie.

ActivityChangedEventArgs

Udostępnia 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 to 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

SpanId Reprezentuje formatowany na podstawie standardu W3C.

ActivityTagsCollection.Enumerator

Wylicza elementy elementu ActivityTagsCollection.

ActivityTraceId

TraceId Reprezentuje format, 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, Assert(Boolean) która wykonuje formatowanie tylko wtedy, gdy potwierdzenie zakończy się niepowodzeniem.

Debug.WriteIfInterpolatedStringHandler

Udostępnia procedurę obsługi ciągów interpolowanych dla WriteIf(Boolean, String) programu i WriteLineIf(Boolean, Object) wykonuje formatowanie tylko wtedy, gdy warunek ma zastosowanie.

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 do przechodzenia przez kolekcję 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 Id właściwości.

ActivityKind

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

ActivitySamplingResult

Wartości wyliczenia używane przez, ActivityListener aby wskazać ilość danych do zebrania dla powiązanego Activityelementu . Żądanie większej ilości danych powoduje większe obciążenie 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 dla 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 EventLog klasy uprawnień.

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 PerformanceCounter klasy uprawnień.

PerformanceCounterType

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

PresentationTraceLevel

Opisuje poziom szczegółowości do ś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, jakie komunikaty mają być wyjściowe dla Debugklas i TraceSwitchTrace .

TraceLogRetentionOption

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

TraceOptions

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

Delegaci

DataReceivedEventHandler

Reprezentuje metodę, która obsłuży OutputDataReceived zdarzenie lub ErrorDataReceived zdarzenie obiektu Process.

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 iniekcji propagatorów. Wywołanie zwrotne jest wywoływane w celu ustawienia wartości nazwanego pola. Propagatory mogą wywoływać je wiele razy, aby ustawić wiele pól.

EntryWrittenEventHandler

Reprezentuje metodę, która będzie obsługiwać EntryWritten zdarzenie elementu EventLog.

SampleActivity<T>

Delegat, który definiuje podpis ActivityListener wywołań zwrotnych używanych w procesie próbkowania.

Uwagi

  • Składnik EventLog udostępnia funkcje zapisywania w dziennikach zdarzeń, odczytywania wpisów dziennika zdarzeń oraz tworzenia i usuwania dzienników zdarzeń oraz źródeł zdarzeń w sieci. Element EntryWrittenEventHandler umożliwia asynchroniczną interakcję z dziennikami zdarzeń. Klasy pomocnicze zapewniają dostęp do bardziej szczegółowej kontroli, w tym: ograniczenia uprawnień, możliwość określania typów dzienników zdarzeń (które sterują typem domyślnych danych zapisywanych we wpisach dzienników zdarzeń) oraz iteracja w ramach kolekcji wpisów dzienników zdarzeń. Aby uzyskać więcej informacji na temat tych zadań, zobacz EventLogPermissionklasy , EventLogEntryTypei EventLogEntryCollection .

  • Klasa Process udostępnia funkcje monitorowania procesów systemowych w sieci oraz uruchamiania i zatrzymywania procesów systemu lokalnego. Oprócz pobierania list uruchomionych procesów (przez określenie komputera, nazwy procesu lub identyfikatora procesu) lub wyświetlanie informacji na temat procesu, 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 Process samej klasy, 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 dane wejściowe, wyjściowe i strumienie 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ślanie stylów okien oraz priorytetów procesów i wątków, a także interakcję z kolekcjami wątków i modułów.

  • Klasa PerformanceCounter umożliwia monitorowanie wydajności systemu, podczas gdy PerformanceCounterCategory klasa zapewnia sposób tworzenia nowych niestandardowych liczników i kategorii. Można zapisywać dane w lokalnych licznikach niestandardowych oraz odczytywać zarówno liczniki lokalne, jak i zdalne (systemowe i niestandardowe). Możesz próbkować liczniki przy użyciu PerformanceCounter klasy i obliczać wyniki z kolejnych próbek liczników wydajności przy użyciu CounterSample klasy . Klasa CounterCreationData umożliwia tworzenie wielu liczników w kategorii i określanie ich typów. Inne klasy skojarzone ze składnikiem liczników wydajności zapewniają dostęp do kolekcji liczników, uprawnień liczników i typów liczników.

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