.NET框架中的许多类(特别是在socket / network类中,我正在查看)使用System.Net.GlobalLog(内部类)来记录某处的跟踪消息。您可以在SslState类中查看诸如GlobalLog.Assert和GlobalLog.Print之类的示例用法:
这与System.Net.Logging(也是内部)类不同,在整个套接字/网络类中也可以使用它。
对于System.Net.Logging,我知道我可以使用< system.diagnostics> App.Config中的配置块,如果配置正确,将导致System.Net.Logging消息被记录。但是,这似乎不会影响System.Net.GlobalLog。
搜索了大约一个小时后,我似乎无法找到有关查找System.Net.GlobalLog输出的任何信息。有谁知道如何定位/查看/控制此输出?
答案 0 :(得分:2)
正如您所说,GlobalLog是System.Net程序集的内部类。无法修改System.Net程序集,您将无法访问该类。
也就是说,您可能需要查看以下内容:http://www.123aspx.com/rotor/RotorSrc.aspx?rot=42941
看起来您必须设置编译器标志TRAVE
和DEBUG
才能使其正常工作..但我没有看到它实际上对记录的信息做了什么。注释表明它应该寻找环境变量设置并将日志转储到系统某处的文本文件中;但是该页面上的代码似乎不完整或者根本没有完成。
我的猜测是你需要找到一些其他方式来访问你想要的日志信息。
答案 1 :(得分:0)
我没有足够的代表将此作为对现有答案的评论,但我想弄清楚TcpClient和Socket类中发生了什么,但也发现它们无法进入。我得到的最接近的是监视正在进行的Windows API调用。我使用了一个名为API Monitor的免费软件工具:http://www.rohitab.com/apimonitor。