在试图追踪仅在我们的生产环境中发生的性能问题时,我们在应用程序内启用了跟踪,以查看方法调用和页面加载时间。将Trace.axd中的数据记录到文本/ xml文件中
这工作得很好,有很多信息有助于追踪问题。但是,查看此信息的唯一方法是浏览到Trace.axd,然后分别查看每个请求。
也可以这样跟踪第一个X请求,X的最大限制为10,000。
有没有办法将这个跟踪信息指向文件或数据库?我相信这可以使用System.Diagnostics
完成,但是,我没有多少运气。
我已经启用了使用
<trace enabled="true" writeToDiagnosticsTrace="true" />
我已经使用了XmlWriterTraceListener
使用
<system.diagnostics>
<trace autoflush="true">
<listeners>
<add
name="XmlWriterTraceListener"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData="c:\trace.xml"
/>
</listeners>
</trace>
</system.diagnostics>
这导致包含时间戳和数据跟踪项目,如XML文件试图追踪“开始加载“,”End Load“等。
但是,它似乎只记录一个请求,并没有记录所有请求。此外,尽管加载时间有用,但理想情况下,我希望提供Trace.axd中可以看到的所有信息,例如请求数据,发布数据,会话数据等。
这是可能根本没有任何主要的代码更改?理想情况下,我想启用此只使用web.config更改。
另外,我已经研究过其他应用程序,例如RedGate和Equatec的性能分析工具,但是,我想首先耗尽非侵入式的跟踪选项。
该应用程序是用ASP.Net 3.5和C#编写的。
+1,我喜欢这个,可以在我们的应用程序中实现它。然而,我所追求的内容之一是尽可能多地了解有关请求的信息,包括帖子和会话数据。我们可以发现某些页面很慢,但是我们遇到了一些用户执行了一些导致问题的操作的情况。我们目前不知道哪些信息会有用,因此希望查看所有信息以查找模式。 – 2011-01-19 12:56:12