Elmah错误日志工具

Exception

对于异常的处理,以前基本就是跳转到一个自定义的错误页面,觉得这样不错挺友好的。同时还是需要记录下来这些异常,才能进一步的进行修改。

怎么去记录这些错误信息呢?我想比较方便的一种做法是在Application_Error方法里面将这些错误保存到数据库或是文件里。

之前很少会去写try...catch语句和抛出一个自定义的Exception,这样就导致程序会经常崩溃和出现小黄页。

现在的项目里会有一些自定义的Exception,在前台会去catch这些Exception进行错误处理,程序会"正常"运行。

只有非自定义的错误抛出时才会导致程序崩溃。很显然这样的处理可以让用户觉得更加友好,增加系统健壮性。

 

Elmah

Elmah可以以插件式的方式加入到项目中来,安装也非常方便。打开 视图>其它窗口>程序包管理控制台

安装:PM> Install-Package Elmah

输入上面的命令安装成功之后,在程序里随便抛出一个异常,就可以通过地址 http://localhost:XXXX/elmah.axd 来查看错误信息。

 

默认会将错误信息保存到内存中。通过下面的命令来选择你想保存的地方。

Install-Package Elmah.xml 会将日志以文件的形式保存到网站根目录下的App_Data文件夹下。

Install-Package Elmah.sqlserver 将日志保存到sql数据库中,需要运行\packages\elmah.sqlserver.1.2\content\App_Readme目录下的sql脚本

 

查看错误的详细信息:

添加错误日志:

    try
     {
        int i = 1;
        int j = 0;
        int k = i / j;
      }
     catch (Exception ex)
      {
         Elmah.Error error=new Error(ex,Context);
         Elmah.SqlErrorLog.GetDefault(Context).Log(error);
      }

 

posted @ 2013-08-31 15:39  叶de第柒章  阅读(1811)  评论(0编辑  收藏  举报