离奇的错误日志:System.Web.StaticFileHandler.GetFileInfo

为了在系统出问题的时候给用户一个可接受的提示界面  并能为后期维护提供第一手资料   搞了个书写错误日志东西
在web系统中直接在Global级别 进行截取和记录

  protected void Application_Error(object sender, EventArgs e)
        {
            Exception ex = Server.GetLastError().GetBaseException();
            if (ex != null)
                PubFunction.ErrorLogPrint(ex.StackTrace + ":" + ex.TargetSite.Name, ex.Message);//书写错误日志
            Response.Redirect("~/404.aspx");//转向提示界面
        }

只是近两天,发现错误日志中记录了大量的日志如下
-----------------------------2012-03-22  17:08:57---------------------------
发生错误的语句:   在 System.Web.StaticFileHandler.GetFileInfo(String virtualPathWithPathInfo, String physicalPath, HttpResponse response)
   在 System.Web.StaticFileHandler.ProcessRequestInternal(HttpContext context)
   在 System.Web.DefaultHttpHandler.BeginProcessRequest(HttpContext context, AsyncCallback callback, Object state)
   在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously):GetFileInfo
错误信息:文件不存在。
-----------------------------2012-03-22  17:09:26---------------------------
发生错误的语句:   在 System.Web.StaticFileHandler.GetFileInfo(String virtualPathWithPathInfo, String physicalPath, HttpResponse response)
   在 System.Web.StaticFileHandler.ProcessRequestInternal(HttpContext context)
   在 System.Web.DefaultHttpHandler.BeginProcessRequest(HttpContext context, AsyncCallback callback, Object state)
   在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously):GetFileInfo
错误信息:文件不存在。

而网站却是可以正常工作的,并没有转到错误页面 ,很是纠结 
1.把断点打到

 Exception ex = Server.GetLastError().GetBaseException();
这块,查看及时变量和查看堆栈信息  并没有获得有价值的东西

后来在 http://forums.asp.net/t/1360302.aspx上得到提示  
2.在调试过程中直接跟踪 Server -> Non-Public Members -> _context -> Request -> AppRelativeCurrentExecutionFilePath这个级别的信息,在这个信息中
终于发现了一张图片的路径信息,而这张图片的路径已经发生改变 。
3.直接在整个项目级别,查找使用这张图片的地方,把路径修改正确

4.终于不再记录这条错误了……

今天又出问题了,错误日志一如既往的出现上面的日志记录,又纠结了
同理,按照上述的过程 找到一个新东西" ~/favicon.ico" 这是个神马东东?  没记得网站中有用到它啊
还好在
此处找到资料," ~/favicon.ico" 是网站的图标, 就是页面头中标题之前的那个小图标 

找到问题就好办了,创建一个图标文件,放到网站根目录下,既没有这条错误日志了,浏览该网站的页面时,也有图标了;嘿嘿  一举两得
效果如下



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值