2010-06-04 3 views
0

J'ai quatre appenders savoir comme suitBesoin d'aide dans Configuration Appender nom dans un fichier de configuration séparé comme app.config ou web.config

appender name= LogFileAppender // to write general logs in File 

appender name=LogDatabaseAppender// to write general logs in db via Oracle StoredProc 

appender name=ExceptionFileAppender // to write exception logs in File 

appender name=ExceptionDatabaseAppender // to write exception logs in db via Oracle StoredProc 

Je veux avoir un fichier appconfig où je peux définir qui Appender à utilisation. De plus, j'ai des méthodes comme suit Method_WriteLogOnly ---> qui utilisera appender 1 ou 2 Method_WriteExceptionLogs ---> qui utiliseront appender 3 ou 4

problème est que je ne sais pas si je suis en utilisant le même log4net fichier .config.xml pour les deux méthodes, puis comment définir l'appender. Quelle est la meilleure pratique, soit de définir l'appender par programme ou par un autre endroit de configuration comme si j'avais un fichier app.config ou web.config, et là j'écris une paire valeur/clé (un type de code comme ça) pour choisir l'appender?

+0

Ce n'est pas un site pour « guider ». C'est un site pour des questions concrètes sur les langages de programmation. –

Répondre

0

Je pense que vous ne devriez pas décider dans le code ce appender à utiliser: vous devez décider ce qui est connecté, mais devrait décider comment il est connecté les gens qui exécutent votre application.

Même si je peux comprendre que vous voulez un fichier distinct pour exception, je me demande un peu pourquoi vous voulez utiliser deux appenders de base de données. Si vous avez besoin d'écrire dans différentes tables, vous pouvez facilement le faire dans votre procédure stockée. Cela a plusieurs avantages: La configuration sera plus facile, vous aurez seulement une connexion de base de données ...

En supposant que ce serait assez bon pour vous de dire que "exceptions == messages avec niveau ERROR" alors vous pouvez facilement créer deux appenders et utilisent des filtres pour s'assurer que seuls les messages avec niveau ERROR se retrouvent dans le fichier journal "exception".

Questions connexes