我正在尝试学习使用Log4Net来改进我的程序中的日志记录技术。我已经阅读了 Log4Net 网站上提供的文档,但是我有这些问题。
这是Log4Net网站上的示例程序中显示的最简单的输出,由BasicConfigurator.Configure()
.
0 [main] INFO MyApp - Entering application.
36 [main] DEBUG Com.Foo.Bar - Did it again!
51 [main] INFO MyApp - Exiting application.
我的程序已经有一个窗格(在调试模式下)来显示程序的流程,该流程在许多异步尝试中循环。所以当我运行它时,我可以看到程序的流程(典型的批量调试方法)。
在这个级别,据我所知,通过使用 Log4Net,我可以在那些时刻收集日志,这些日志可以附加到许多不同的输出方法中,例如控制台、外部文件、数据库等。这导致代码加倍. 在每个测试点中,一行用于将日志输出到 UI,另一行用于 Log4Net 的日志。
是否有任何方法可以将其中一个附加程序的内容(例如上面显示的那个)输出到字符串类型的变量或类似的变量,以便能够在运行时显示它?
我不确定您如何在 WPF 应用程序中看到控制台的输出。将Log4Net输出到一个文件中,然后将它的比赛打印回一个字符串,这似乎很有趣。
更新
当Show output from:下拉菜单设置为“Debug”时,Console Appender
可以在Visual Studio的“输出”窗口中看到输出。非常感谢@Aron 指出这一点。