我想让我的ASP.NET应用程序在某处的日志中写入行。 IIS是否提供任何内置方式来记录ASP.NET日志消息?我当时在想可能有一种方法可以捕获对System.Diagnostics.Debug.WriteLine()的调用,但是我找不到任何方法。
要捕获Debug.Write
和Debug.WriteLine
,请使用DebugView from sysinternals。
http://technet.microsoft.com/en-us/sysinternals/bb896647
当然,您必须使用Debug=true
进行编译,否则根本不会调用这些函数。因此,Debug.Write是仅用于实时测试和调试应用程序的好方法,而不是通常保留错误日志的解决方案。对于您想保存错误的情况,我认为您需要使用其他用户建议的一个库,或者在事件查看器中直接编写您的错误。
ps:由于某些原因,版本4.78在Windows XP上不起作用,并且我切换回4.77
尝试Response.AppendToLog(),这将写入IIS日志文件。很好,因为它不需要任何其他软件。唯一的缺点是您的日志文件可能很大。我主要使用它来标识IIS日志中记录的内容。例如。在用户登录时输入用户名,您可以跟踪他们的会话。
据我所知,Debug.WriteLine写入调试输出。您可以在调试器中看到它,然后从那里保存它。它不写日志文件。Debug Class
您可以尝试ELMAH ,
是应用程序范围的错误记录工具,它完全可插拔的。可以将其动态添加到正在运行的ASP.NET Web中应用程序,甚至计算机上的所有ASP.NET Web应用程序,无需重新编译或重新部署。
或者您可以尝试Log4Net