Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
U kunt de My.Application.Log en My.Log objecten gebruiken om informatie te registreren over gebeurtenissen die zich in uw toepassing voordoen. In dit scenario ziet u hoe u de standaardinstellingen overschrijft en ervoor zorgt dat het Log object naar andere logboeklisteners schrijft.
Vereiste voorwaarden
Het Log object kan informatie schrijven naar verschillende logboeklisteners. U moet de huidige configuratie van de logboeklisteners bepalen voordat u de configuraties wijzigt. Zie Walkthrough: Bepalen waar My.Application.Log informatie schrijft voor meer informatie.
U kunt Hoe te: Gebeurtenisinformatie naar een tekstbestand schrijven of Hoe te: Naar een gebeurtenislogboek van een toepassing schrijven bekijken.
Listeners toevoegen
Klik met de rechtermuisknop op app.config in Solution Explorer en kies Openen.
-of-
Als er geen app.config bestand is:
Kies Nieuw item toevoegen in het menu Project.
Selecteer toepassingsconfiguratiebestand in het dialoogvenster Nieuw item toevoegen.
Klik op Toevoegen.
Zoek de
<listeners>sectie onder de<source>sectie met hetnamekenmerk DefaultSource in de<sources>sectie. De<sources>sectie bevindt zich in de<system.diagnostics>sectie, in de sectie op het hoogste niveau<configuration>.Voeg deze elementen toe aan die
<listeners>sectie.<!-- Uncomment to connect the application file log. --> <!-- <add name="FileLog" /> --> <!-- Uncomment to connect the event log. --> <!-- <add name="EventLog" /> --> <!-- Uncomment to connect the event log. --> <!-- <add name="Delimited" /> --> <!-- Uncomment to connect the XML log. --> <!-- <add name="XmlWriter" /> --> <!-- Uncomment to connect the console log. --> <!-- <add name="Console" /> -->Verwijder de opmerkingen bij de logboeklisteners waarvan u berichten wilt ontvangen
Log.Zoek de
<sharedListeners>sectie in de<system.diagnostics>sectie, in de bovenliggende<configuration>sectie.Voeg deze elementen toe aan die
<sharedListeners>sectie.<add name="FileLog" type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" initializeData="FileLogWriter" /> <add name="EventLog" type="System.Diagnostics.EventLogTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="sample application"/> <add name="Delimited" type="System.Diagnostics.DelimitedListTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\temp\sampleDelimitedFile.txt" traceOutputOptions="DateTime" /> <add name="XmlWriter" type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\temp\sampleLogFile.xml" /> <add name="Console" type="System.Diagnostics.ConsoleTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="true" />De inhoud van het app.config-bestand moet vergelijkbaar zijn met de volgende XML:
<?xml version="1.0" encoding="utf-8" ?> <configuration> <system.diagnostics> <sources> <!-- This section configures My.Application.Log --> <source name="DefaultSource" switchName="DefaultSwitch"> <listeners> <add name="FileLog"/> <!-- Uncomment to connect the application file log. --> <!-- <add name="FileLog" /> --> <!-- Uncomment to connect the event log. --> <!-- <add name="EventLog" /> --> <!-- Uncomment to connect the event log. --> <!-- <add name="Delimited" /> --> <!-- Uncomment to connect the XML log. --> <!-- <add name="XmlWriter" /> --> <!-- Uncomment to connect the console log. --> <!-- <add name="Console" /> --> </listeners> </source> </sources> <switches> <add name="DefaultSwitch" value="Information" /> </switches> <sharedListeners> <add name="FileLog" type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" initializeData="FileLogWriter" /> <add name="EventLog" type="System.Diagnostics.EventLogTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="sample application"/> <add name="Delimited" type="System.Diagnostics.DelimitedListTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\temp\sampleDelimitedFile.txt" traceOutputOptions="DateTime" /> <add name="XmlWriter" type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\temp\sampleLogFile.xml" /> <add name="Console" type="System.Diagnostics.ConsoleTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="true" /> </sharedListeners> </system.diagnostics> </configuration>
Een listener opnieuw configureren
Zoek het element van de luisteraar uit de
<add>-sectie.Het
typekenmerk geeft de naam van het listenertype. Dit type moet overnemen van de TraceListener klasse. Gebruik de sterk benoemde typenaam om ervoor te zorgen dat het juiste type wordt gebruikt. Zie de sectie 'Een sterk benoemd type verwijzen' hieronder voor meer informatie.Sommige typen die u kunt gebruiken, zijn:
Een Microsoft.VisualBasic.Logging.FileLogTraceListener listener, die naar een bestandslogboek schrijft.
Een System.Diagnostics.EventLogTraceListener listener, die informatie naar het gebeurtenislogboek van de computer schrijft dat is opgegeven door de
initializeDataparameter.De System.Diagnostics.DelimitedListTraceListener en System.Diagnostics.XmlWriterTraceListener listeners, die naar het bestand schrijven dat is opgegeven in de
initializeDataparameter.Een System.Diagnostics.ConsoleTraceListener listener, die naar de opdrachtregelconsole schrijft.
Raadpleeg de documentatie van dat type voor informatie over waar andere typen logboeklisteners informatie schrijven.
Wanneer de toepassing het log-listener-object maakt, wordt het
initializeDatakenmerk doorgegeven als de constructorparameter. De betekenis van hetinitializeDatakenmerk is afhankelijk van de traceerlistener.Nadat de logboeklistener is gemaakt, stelt de toepassing de eigenschappen van de listener in. Deze eigenschappen worden gedefinieerd door de andere kenmerken in het
<add>element. Zie de documentatie voor het type listener voor meer informatie over de eigenschappen voor een bepaalde listener.
Verwijzen naar een sterk benoemd type
Om ervoor te zorgen dat het juiste type wordt gebruikt voor uw logboeklistener, moet u de volledig gekwalificeerde typenaam en de sterk benoemde assemblynaam gebruiken. De syntaxis van een sterk benoemd type is als volgt:
< typenaam, ><>, <versienummer>, <cultuur>, <sterke naam>
In dit codevoorbeeld ziet u hoe u de sterk benoemde typenaam voor een volledig gekwalificeerd type kunt bepalen, namelijk "System.Diagnostics.FileLogTraceListener".
Public Sub DisplayStrongName() Dim t As Type = GetType(Logging.FileLogTraceListener) MsgBox(t.FullName & ", " & t.Assembly.FullName) End SubDit is de uitvoer en kan worden gebruikt om uniek te verwijzen naar een sterk benoemd type, zoals in de bovenstaande procedure 'Listeners toevoegen'.
Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a