En-têtes et pieds de page TraceListener
-
12-12-2019 - |
Question
Lors de l'écriture d'un TraceListener personnalisé, comment puis-je forcer l'en-tête d'écriture, les données/messages et le pied d'écriture à constituer un seul enregistrement discret ?Plus précisément, les écouteurs de trace personnalisés en question écrivent dans une source non basée sur un fichier, telle qu'une base de données ou un flux d'événements.Je dois soit ignorer les méthodes de base writeHeader, writefooter dans TraceListener, soit les regrouper d'une manière ou d'une autre dans un seul événement d'écriture.
La solution
Voici un bon article sur la façon dont la coutume TraceListener
s travail, qui explique également quand et quoi WriteHeader
et WriteFooter
sont appelés.L'astuce pour éviter WriteHeader
et WriteFooter
est apparemment d'ignorer le Données de trace et/ou TraceEvent appels.
Il y a également une discussion sur cette question dans ce fil SO.
Enfin, je vous encourage à jeter un œil à Ukadc.Diagnostics c'est une bibliothèque plutôt sympa pour étendre System.Diagnostics
et fournit, entre autres fonctionnalités, un bon moyen d'obtenir un formatage de sortie de type log4net/NLog.Il y a un peu de discussion sur cette bibliothèque dans ce fil SO.
Bonne chance!