Procédure pas à pas : modification de l'emplacement des informations My.Application.Log
Mise à jour : novembre 2007
Vous pouvez utiliser les objets My.Application.Log et My.Log pour enregistrer des informations sur les événements qui se produisent dans votre application. Cette procédure pas à pas indique comment substituer les paramètres par défaut pour que l'objet Log écrive dans d'autres écouteurs de journalisation.
Composants requis
L'objet Log peut écrire des informations dans plusieurs écouteurs de journalisation. Vous devez déterminer la configuration actuelle des écouteurs de journalisation avant de modifier les configurations. Pour plus d'informations, consultez Procédure pas à pas : détermination de l'emplacement des informations My.Application.Log.
Vous pouvez examiner Comment : écrire des informations sur des événements dans un fichier texte ou Comment : écrire dans le journal des événements de l'application.
Pour ajouter des écouteurs
Cliquez avec le bouton droit sur app.config dans l'Explorateur de solutions et sélectionnez l'option Ouvrir.
ou
S'il n'y a aucun fichier app.config :
Dans le menu Projet, choisissez Ajouter un nouvel élément.
Dans la boîte de dialogue Ajouter un nouvel élément, sélectionnez Fichier de configuration de l'application.
Cliquez sur Ajouter.
Localisez la section <listeners>, sous la section <source> avec l'attribut name "DefaultSource", dans la section <sources>. La section <sources> est dans la section <system.diagnostics>, dans la section <configuration> de niveau supérieur.
Ajoutez ces éléments à la section <listeners>.
<!-- 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" /> -->
Supprimez les marques de commentaire des écouteurs de journalisation spécifiant que vous souhaitez recevoir des messages Log.
Recherchez la section <sharedListeners>, dans la section <system.diagnostics>, dans la section <configuration> de niveau supérieur.
Ajoutez ces éléments à la section <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" delimiter=";;;" 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" />
Le contenu du fichier app.config doit être similaire à l'élément XML suivant :
<?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" delimiter=";;;" 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>
Pour reconfigurer un écouteur
Recherchez l'élément <add> de l'écouteur dans la section <sharedListeners>.
L'attribut type indique le nom du type d'écouteur. Ce type doit hériter de la classe TraceListener. Utilisez le type qui porte un nom fort pour garantir l'utilisation du type approprié. Pour plus d'informations, consultez la section « Pour référencer un type portant un nom fort » ci-dessous.
Les types que vous pouvez utiliser sont entre autres les suivants :
un écouteur Microsoft.VisualBasic.Logging.FileLogTraceListener qui écrit dans un journal de fichier ;
un écouteur System.Diagnostics.EventLogTraceListener qui écrit des informations dans le journal des événements de l'ordinateur spécifié par le paramètre initializeData ;
les écouteurs System.Diagnostics.DelimitedListTraceListener et System.Diagnostics.XmlWriterTraceListener qui écrivent dans le fichier spécifié dans le paramètre initializeData ;
un écouteur System.Diagnostics.ConsoleTraceListener qui écrit dans la console de ligne de commande.
Pour plus d'informations sur l'emplacement où d'autres types d'écouteurs de journalisation écrivent des informations, consultez leur documentation.
Lorsque l'application crée l'objet écouteur de journalisation, l'attribut initializeData devient le paramètre de constructeur. La signification de l'attribut initializeData dépend de l'écouteur de la trace.
Une fois qu'elle a créé l'écouteur de journalisation, l'application définit les propriétés de l'écouteur. Ces propriétés sont définies par les autres attributs dans l'élément <add>. Pour plus d'informations sur les propriétés d'un écouteur particulier, consultez la documentation de ce type d'écouteur.
Pour référencer un type portant un nom fort
Pour garantir l'utilisation du type correct pour votre écouteur de journalisation, vérifiez que vous utilisez le nom de type qualifié complet et le nom d'assemblage portant un nom fort. La syntaxe d'un type portant un nom fort se présente comme suit :
<type name>, <assembly name>, <version number>, <culture>, <strong name>
Cet exemple de code indique comment déterminer le nom de type portant un nom fort pour un type qualifié complet - "System.Diagnostics.FileLogTraceListener" dans ce cas.
Public Sub DisplayStrongName() Dim t As Type = GetType(Logging.FileLogTraceListener) MsgBox(t.FullName & ", " & t.Assembly.FullName) End Sub
Il s'agit de la sortie, et elle peut être utilisée pour référencer uniquement un type portant un nom fort, comme dans la procédure « Pour ajouter des écouteurs » ci-dessus.
Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
Voir aussi
Tâches
Comment : écrire des informations sur des événements dans un fichier texte
Comment : écrire dans le journal des événements de l'application