Nous avons plusieurs assemblages (bibliothèques de classes) que notre application principale utilise. Je veux router les journaux de certains assemblages vers des destinations différentes, mais j'ai un fichier App.Config, alors comment puis-je y parvenir? Je suis à peu près sûr qu'il existe un paramètre comme celui-ci dans Logging Application Block, que je ne connais pas. Aussi, je veux router les logs en fonction de leur priorité (qu'ils soient ou non enregistrés) pour chaque assemblage que je suis en train de faire.Application de journalisation de bibliothèque d'entreprise Bloquer différentes sources
Répondre
J'ai trouvé la solution. Ce que j'ai fait, c'est que pour chaque assemblage a créé une catégorie et un écouteur de trace. Et j'ai utilisé le fichier app.config de l'exécutable principal et les autres assemblys fonctionnent correctement. Compte tenu du niveau de consignation, il est déjà présent dans le bloc d'application de consignation. Vous pouvez le gérer avec la propriété SourceLevels des sources de catégorie ou la propriété Filter des écouteurs de trace. La différence entre les deux est dans la portée.
De modèles & pratiques forum de discussion de:
Ils sont les mêmes, la seule différence est dans leur champ d'application. La propriété SourceLevels de la catégorie s'applique à tous les écouteurs de trace qui lui appartiennent. La propriété Filter dans un écouteur de trace ne s'applique évidemment qu'à elle-même. Le filtrage est effectué d'abord au niveau Catégorie sur l'écouteur de trace. Si la catégorie est plus restrictive, elle ne procède pas à l'appel des écouteurs de trace. Si elle autorise tous les types d'événements, elle transmet ensuite l'entrée de journal à chaque écouteur de trace et chacun d'eux détecte s'il enregistre cette entrée en fonction de son filtre.