日志记录和跟踪

本文关键字:跟踪 记录 日志 | 更新日期: 2023-09-27 18:36:59

如何为分析仪添加跟踪和日志记录?您可能不知道,我一直遇到一个问题,导致我的分析仪在实验实例中工作,而不是在正常实例中工作。所以我正在考虑添加跟踪和日志记录,当我在正常实例中运行它时,我可以检查它。

您对解决这个问题有什么建议和建议?我的桌面应用程序可以实现顶级异常处理程序,但是由于分析器是Visual Studio的独立"插件"模块,我可以看到任何可以实现这种方法的地方。

我想我可以使用 ETW(最初需要管理员权限才能创建事件源),但我担心这不适用于可移植类。

我试过了

Debug.Write
Console.Write

但是我在哪里可以看到 VS 中的输出?如果它确实输出文本,它(对我来说)会迷失在其他输出文本的噪音中。

输出到"我的文档"中的文件(没有管理员权限)可以,但是如何创建文件?

附加可移植类的目标是

.NET Framework 4.5
Windows 8

日志记录和跟踪

通常使用跟踪侦听器将跟踪信息写入文件。在那里,您可以在没有 VS 的情况下读取跟踪信息。这里有一个很好的介绍:MSDN:跟踪和检测应用程序

另请阅读有关如何使用跟踪侦听器的说明。您会发现您需要阅读很多内容,它相当复杂并且有几个限制。我发现最令人恼火的是,对于近乎实时的跟踪来说,它太慢了,并且由跟踪问题引起的异常被抛在跟踪调用者的线程上。这是人们最不想要的,因为跟踪而获得异常。由于您的特殊需求,您可能会发现其他问题。

出于这些原因,我编写了自己的跟踪类,该类可用于任何 .NET 技术。这是可靠的代码,我用了多年。您可以在以下位置找到它,并详细说明如何使用它:CodePlex: ACoreLib.Tracer