Instruktaż: Filtrowanie danych wyjściowych My.Application.Log (Visual Basic)
Artykuł
W tym instruktażu przedstawiono sposób zmiany domyślnego dziennika filtrowania dla My.Application.Log obiekt, aby kontrolować, jakie informacje są przekazywane z Log obiektów detektorów i jakie informacje są zapisywane przez detektory.Nawet po budowanie aplikacji, można zmienić sposób rejestrowania, ponieważ informacje konfiguracyjne są przechowywane w pliku konfiguracyjnym aplikacji.
Wprowadzenie
Każdy komunikat, że My.Application.Log zapisuje ma poziom ważności skojarzone, które mechanizmów filtrowania służy do kontroli danych wyjściowych dziennika.Używa tej aplikacji przykładowej My.Application.Log metod zapisu kilka logować się różne poziomy ważności wiadomości.
Do tworzenia aplikacji przykładowej
Otwórz nowy Visual Basic projekt aplikacji systemu Windows.
Dodawanie przycisku o nazwie Button1 do formularza Form1.
W Click obsługi zdarzenia Button1, Dodaj następujący kod:
Domyślnie stosowania opróżnień wyjściowego pliku dziennika powoduje zamknięcie aplikacji.
W przykładzie powyżej, drugie wywołanie WriteEntry metody i wywołanie WriteException metoda daje danych wyjściowych dziennika podczas wywołania pierwszego i ostatniego WriteEntry metody nie.Wynika to z poziomów ważności WriteEntry i WriteException "Informacje" i "Error", które są dozwolone przez My.Application.Log obiektu domyślne filtrowanie dziennika.Jednak zdarzenia z poziomami ważności "Start" i "Stop" nie generuje danych wyjściowych dziennika.
Filtrowanie dla wszystkich detektorów My.Application.Log
My.Application.Log Obiektu zastosowań SourceSwitch o nazwie DefaultSwitch do kontroli, która wiadomości go przechodzi od WriteEntry i WriteException metody do detektorów dziennika.Można skonfigurować DefaultSwitch w pliku konfiguracyjnym aplikacji, ustawiając jego wartość do jednego z SourceLevels wartości wyliczenia.Domyślnie jego wartość jest "Informacje".
W tej tabeli pokazano poziom ważności, wymagane dla dziennika wpisywać wiadomości, detektory, biorąc pod uwagę w szczególności DefaultSwitch ustawienie.
Wartość DefaultSwitch
Wskaźnik ważności wiadomości, wymagane dla danych wyjściowych
Critical
Critical
Error
CriticallubError
Warning
Critical, Error, orWarning
Information
Critical, Error, Warning, orInformation
Verbose
Critical, Error, Warning, Information, orVerbose
ActivityTracing
Start, Stop, Suspend, Resume, orTransfer
All
Wszystkie wiadomości są dozwolone.
Off
Wszystkie wiadomości są blokowane.
[!UWAGA]
WriteEntry i WriteException metody każdy ma przeciążenia nie określa poziom ważności.Poziom ważności niejawny dla WriteEntry przeciążenie jest "Informacje", a poziom ważności niejawny dla WriteException przeciążenie jest "Error".
W następującej tabeli opisano w poprzednim przykładzie danych wyjściowych dziennika: z domyślnymi DefaultSwitch ustawienie "Informacje", tylko drugie wywołanie do WriteEntry metody i wywołanie WriteException metody produkcji dziennika produkcji.
Do rejestrowania zdarzeń śledzenia aktywności tylko
Kliknij prawym przyciskiem myszy app.config w Solution Explorer i wybierz Otwórz.
- lub -
Jeśli nie ma pliku app.config:
Na Projekt menu, wybierz polecenie Dodaj nowy element.
Z Dodaj nowy element okno dialogowe Wybierz Pliku konfiguracyjnego aplikacji.
Kliknij przycisk dodać.
Zlokalizuj <switches> sekcji, która jest w <system.diagnostics> sekcji, która jest w najwyższym poziomie <configuration> sekcji.
Znajdź element, który dodaje DefaultSwitch do kolekcji przełączników.Powinno wyglądać podobnie do tego elementu:
<add name="DefaultSwitch" value="Information" />
Zmień wartość value atrybutu do "ActivityTracing".
Zawartość pliku app.config powinna być podobna do następującej XML:
W poprzednim przykładzie przedstawiono sposób zmiany filtrowanie dla wszystkich My.Application.Log danych wyjściowych.Ten przykład demonstruje sposób filtrowania detektor poszczególnych dziennika.Domyślnie aplikacja ma dwa detektory tego zapisu do wyjścia debugowania aplikacji i plików dziennika.
Plik konfiguracyjny kontroluje zachowanie detektory dziennika zezwolenie na każdy z nich do filtru, który jest podobny do przełącznika dla My.Application.Log.Detektor zdarzeń dziennika wyświetli wiadomość tylko wtedy, gdy wskaźnik ważności wiadomości jest dozwolony przez oba dziennika DefaultSwitch i listener dziennika filtr.
Ten przykład demonstruje, jak skonfigurować filtrowanie dla nowych odbiornika debugowania i dodać go do Log obiektu.Odbiornik debugowania domyślne powinny zostać usunięte z Log obiektu, więc jest jasne, że komunikaty debugowania pochodzą z nowy odbiornik debugowania.
Aby rejestrować tylko zdarzenia śledzenia aktywności
Kliknij prawym przyciskiem myszy app.config w Solution Explorer i wybierz polecenie Otwórz.
- lub -
Jeśli nie ma pliku app.config:
Na Projekt menu, wybierz polecenie Dodaj nowy element.
Z Dodaj nowy element okno dialogowe Wybierz Pliku konfiguracyjnego aplikacji.
Kliknij przycisk dodać.
Kliknij prawym przyciskiem myszy app.config w Solution Explorer.Wybierz Otwórz.
Zlokalizuj <listeners> sekcji w <source> sekcji z name atrybutu "DefaultSource", który znajduje się pod <sources> sekcji.<sources> Sekcji znajduje się pod <system.diagnostics> sekcji w najwyższego poziomu <configuration> sekcji.
Dodaj ten element do <listeners> sekcji:
<!-- Remove the default debug listener. -->
<remove name="Default"/>
<!-- Add a filterable debug listener. -->
<add name="NewDefault"/>
Zlokalizuj <sharedListeners> sekcji w <system.diagnostics> sekcji w najwyższego poziomu <configuration> sekcji.
Dodaj ten element, do którego <sharedListeners> sekcji: