2010-05-14 27 views
2

有没有什么办法可以找出ASP.Net运行时是否提供了ASPX页面的缓存副本,或者实际上是否经历了页面生命周期?ASP.NET缓存的aspx页面和IIS日志

这里是我的问题:

我看到在已成功(200 OK)担任我的IIS日志文件很多条目。我在Session_Start和Application_BeginRequest()事件中有一个相应的日志记录代码(Log4Net API),它将每个请求记录到我的数据库中,并提供更多详细信息。在我的SQL DB中没有看到任何应该由Log4Net代码创建的案例的相应条目。

是否有任何日志可用来确定缓存副本是否由.NET工作进程提供?此外,如果我的日志记录代码会引发异常,那么在IIS日志中不会显示为500?

的代码是Windows 2008的服务器上,IIS 7

PS:如果编码组装解决事件,并记录到数据库可以帮助跟踪此?有人能指点我一个例子吗?

回答

1

如果您不想手动添加更多日志记录,那么您可以打开跟踪。要打开跟踪,打开你的web.config并找到...标签。设置enabled =“true”,保存web.config,然后你可以访问http:// {你的网站} /trace.axd并查看页面跟踪事件。

您可以测试以查看是否可以通过首先查看页面看到缓存调用,然后单击并返回到该缓存调用,然后检查轨迹以查看记录事件的差异。您应该在第二个页面视图的跟踪中看到缓存抓取。

这里有一个关于这个伟大的功能的更多信息从MS:http://msdn.microsoft.com/en-us/library/1y89ed7z(VS.71).aspx

您还可以在你的代码写入使用Trace.Write或Trace.Warn跟踪输出的能力。这是添加一些调试代码的好方法,只有在启用Tracing后才能运行。

HTH, 兰斯

+0

感谢兰斯。我知道追踪是一种选择。唯一的问题是代码在生产环境中,我必须等到修补程序通过两个测试环境。其次,ASPX页面是通过JBOSS服务器调用的,在那里我遇到问题,偶尔会增加苦恼。 – 2010-05-14 15:47:25