Nous utilisons Enterprise Library 4.1 pour la journalisation (et la gestion des exceptions/cryptographie).Journalisation de la bibliothèque d'entreprise - comment obtenir le niveau de journalisation configuré lors de l'exécution?
Est-ce que quelqu'un connaît un bon moyen de déterminer le niveau de journalisation configuré à l'exécution? J'ai écrit une classe LogUtility pour faire les appels d'exploitation forestière, et vous appelle comme par cet exemple:
LogUtility.LogVerbose(
string.Format("Processing event {0}", currentEvent.EventIDImported),
MethodBase.GetCurrentMethod().Name,
this.GetType().Name
);
Je comprends qu'il soit pas réellement connecté au fichier à moins que le niveau de journalisation est définie sur une niveau approprié, dans app.config dans mon cas. Mais je ne veux pas vraiment que les paramètres de la méthode, c'est-à-dire les noms des méthodes et des types, et dans certains cas les chaînes réelles enregistrées, soient évalués à moins que cela ne soit absolument nécessaire.
Cela vous semble-t-il une préoccupation valable? Notre application peut contenir des dizaines de millions d'itérations et de points de connexion. Si possible, je voudrais définir un indicateur basé sur le niveau de journal configuré, et vérifier cela avant de faire l'appel de la méthode ci-dessus.
EDIT - Je suppose que dans l'exemple ci-dessus, je pourrais coder en dur la méthode et taper les noms à chaque appel. Mais j'aimerais quand même savoir s'il existe un moyen de déterminer le niveau.
Ceci est en effet une préoccupation valable. –