2010-09-18 5 views
1

Dans log4net, nous pouvons utiliser ILog logger = LogManager.GetLogger(typeof(something)); pour créer un enregistreur.
Comment enregistrer un fichier journal dont le nom est le nom du consignateur dans log4net?

Mais je veux enregistrer le journal avec le nom de "quelque chose" dans la méthode GetLogger(). Comment puis-je faire ceci?

+0

Voulez-vous dire que vous voulez changer le nom du fichier journal? –

+0

non, je veux enregistrer le journal par nom de classe –

+0

Tant que la classe que vous souhaitez utiliser implémente ILog cela devrait fonctionner. Quel est le problème réel que vous rencontrez? –

Répondre

2

log4net ne prend pas en charge cette configuration. Si vous n'avez que quelques classes, vous pouvez configurer un appender par classe, mais en fonction du nombre de classes votre fichier de configuration deviendra assez gros.

Vous pouvez bien sûr écrire votre propre nom d'utilisateur avec cette fonctionnalité, mais vous pouvez envisager de vous connecter à une base de données à la place. De cette façon, vous pouvez filtrer vos messages de journal comme bon vous semble.


Edit: Vous pouvez aussi créer les appenders par programme enregistreur. Mais je ne voudrais pas y aller ...