67 votes

Comment puis-je afficher les messages NLog dans la fenêtre de sortie de Visual Studio?

Je suis en train d'essayer d'envoyer la sortie vers la console (ou colouredconsole) ... ce qui, j'espère, irait (également?) vers la fenêtre Output de Visual Studio pour n'importe quel site/application web ASP.NET/mvc.

Par défaut, cela ne fonctionne pas, mais si je change la cible en 'fichier', alors ça fonctionne sûrement.

Est-ce que NLog peut afficher la sortie dans la fenêtre Output pour les applications web?

140voto

Scott P Points 1976

Vous pouvez utiliser ce fichier de configuration (nlog.config dans le chemin de l'application):

Voir aussi: https://github.com/NLog/NLog/wiki/Debugger-target

-Scott

5 votes

AWESOMESAUCE! Je n'ai jamais su qu'il existait un type == Debugger. GAGNANT!

1 votes

Cela fonctionne bien avec le débogage. Y a-t-il un moyen de le faire fonctionner sans débogage aussi ?

6 votes

Il est important de noter que cela entraîne une importante pénalité en termes de performances. Écrire beaucoup de sortie vers la cible Debugger a rendu mes applications extrêmement lentes. Ne l'activez pas en production ! De manière surprenante, écrire vers une cible File semble être beaucoup plus rapide, même si File signifie des opérations d'E/S disque et pas Debugger. Je ne suis pas sûr si c'est de la faute de NLog ou de Visual Studio.

2voto

NickG Points 1259

Ajoutant à la réponse de Scott P, vous pouvez ajouter un filtre pour lorsque l'environnement n'est pas "Development" pour éviter tout ralentissement en Staging/Production etc.

-2voto

Hrvoje Points 4248

J'utilise cette classe pour afficher dans la fenêtre de sortie du débogueur de VS :
http://www.u2u.info/Blogs/Kris/Lists/Posts/Post.aspx?ID=11
mais je ne sais pas si cela fonctionnera avec nlog (cela fonctionnera s'il utilise TextWriter pour la sortie), tu peux essayer !

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X