Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Cette procédure pas à pas montre comment créer un écouteur de journal personnalisé et le configurer pour écouter la sortie de l’objet My.Application.Log .
Pour commencer
Les écouteurs de journalisation doivent hériter de la classe TraceListener.
Pour créer l’écouteur
Dans votre application, créez une classe nommée
SimpleListenerqui hérite de TraceListener.Public Class SimpleListener Inherits System.Diagnostics.TraceListener <Security.Permissions.HostProtection(Synchronization:=True)> Public Overloads Overrides Sub Write(ByVal message As String) MsgBox("Write: " & message) End Sub <Security.Permissions.HostProtection(Synchronization:=True)> Public Overloads Overrides Sub WriteLine(ByVal message As String) MsgBox("WriteLine: " & message) End Sub End ClassLes méthodes Write et WriteLine, requises par la classe de base, appellent
MsgBoxpour afficher leur entrée.L’attribut HostProtectionAttribute est appliqué aux méthodes Write et WriteLine afin que leurs attributs correspondent aux méthodes de la classe parente. L’attribut HostProtectionAttribute permet à l’hôte qui exécute le code de déterminer que le code expose la synchronisation de protection de l’hôte.
Remarque
L’attribut HostProtectionAttribute est efficace uniquement sur les applications non managées qui hébergent le Common Language Runtime et qui implémentent la protection de l’hôte, comme SQL Server.
Pour vérifier que My.Application.Log utilise votre écouteur de journalisation, vous devez attribuer un nom fort à l’assembly qui le contient.
La procédure suivante fournit des étapes simples pour créer un assembly d’écouteur de journalisation portant un nom fort. Pour plus d’informations, consultez Création et utilisation d’assemblys Strong-Named.
Pour attribuer un nom fort à l’assembly de l’écouteur de journalisation
Avoir un projet sélectionné dans l’Explorateur de solutions. Dans le menu Projet , choisissez Propriétés.
Cliquez sur l'onglet Signature .
Sélectionnez la zone Signer l'assembly .
Sélectionnez <Nouveau> dans la liste déroulante Choisir un fichier de clé de nom fort.
La boîte de dialogue Créer une clé de nom fort s’ouvre.
Indiquez un nom pour le fichier de clé dans la zone Nom du fichier clé .
Entrez un mot de passe dans les zones Entrer le mot de passe et Confirmer le mot de passe .
Cliquez sur OK.
Reconstruire l’application.
Ajout de l’écouteur
Maintenant que l’assembly a un nom fort, vous devez déterminer le nom fort de l’écouteur afin que My.Application.Log utilise votre écouteur de journalisation.
Le format d’un type fortement nommé est le suivant.
<nom de type>, <nom de l'assembly>, <numéro de version>, <culture>, <nom fort>
Pour déterminer le nom fort de l’écouteur
Le code suivant montre comment déterminer le nom de type fortement nommé pour
SimpleListener.Public Sub DisplaySimpleListenerStrongName() Dim t As Type = GetType(SimpleListener) MsgBox(t.FullName & ", " & t.Assembly.FullName) End SubLe nom fort du type dépend de votre projet.
Avec le nom fort, vous pouvez ajouter l’écouteur à la collection de l’écouteur de journalisation My.Application.Log.
Pour ajouter l’écouteur à My.Application.Log
Cliquez avec le bouton droit sur app.config dans l’Explorateur de solutions , puis choisissez Ouvrir.
- ou -
S’il existe un fichier app.config :
Dans le menu Projet , choisissez Ajouter un nouvel élément.
Dans la boîte de dialogue Ajouter un nouvel élément , choisissez Fichier de configuration de l’application.
Cliquez sur Ajouter.
Recherchez la section
<listeners>, dans la section<source>avec l’attributname« DefaultSource », située dans la section<sources>. La<sources>section se trouve dans la<system.diagnostics>section, dans la section de niveau<configuration>supérieur.Ajoutez cet élément à la
<listeners>section :<add name="SimpleLog" />Recherchez la section
<sharedListeners>, dans la section<system.diagnostics>, dans la section<configuration>de niveau supérieur.Ajoutez cet élément à cette
<sharedListeners>section :<add name="SimpleLog" type="SimpleLogStrongName" />Modifiez la valeur de
SimpleLogStrongNamepour qu’elle soit le nom fort de l’écouteur.