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);
}
 
 
 
 
标签: asp.net工具

Elmah错误日志工具的更多相关文章

  1. 【工具推荐】ELMAH——可插拔错误日志工具

    今天看到一篇文章(构建ASP.NET网站十大必备工具(2)),里面介绍了一个ELMAH的错误日志工具,于是研究了一下. ELMAH 是 Error Logging Modules and Handle ...

  2. 【工具推荐】ELMAH——可插拔错误日志工具(转)

    出处:http://www.cnblogs.com/liping13599168/archive/2011/02/23/1962625.html 今天看到一篇文章(构建ASP.NET网站十大必备工具( ...

  3. 记录C#错误日志工具

    在编程过程中,我们经常会用try...catch处理可能出错的代码块.如果程序出现错误,则直接show出错误信息. 当然,大型的系统都有错误日志处理模块,用数据库记录错误日志信息,有相应的写入错误日志 ...

  4. 【手把手教你Elmah】如何在MVC.NET项目中在线查看【错误日志】

     一.  在NuGet下载Elmah.MVC dll文件!  或者点击下载dll文件,并且引用客户端. 二.配置WebConfig <sectionGroup name="elmah& ...

  5. ELMAH+MVC4+SQLite 错误日志

    任何程序我想无论是在调试开发阶段还是上线运营阶段,都能够使人“放心”,不要出什么意外,也不要玩什么心跳:那就需要比较到位和及时的异常与错误日志模块. 本文将简要描述ELMAH.MVC4与SQLite这 ...

  6. log4j日志工具

    一.关于日志 1.日志定义: 项目在运行阶段产生的信息 2.日志级别 最常见的日志级别有4个: error :错误日志 warn:警告日志 info:流程日志 debug:调试日志   优先级从高到低 ...

  7. Apache错误日志时时查看

    做项目的时候,有时候会需要查看一下apache的错误日志,然后就需要很繁琐的打开那个目录下面,看信息,只有当错误的时候我才会去打开那个文件. 但是最近我发现在开发的时候,自己忽略掉了很多错误,虽然不会 ...

  8. SQL Server代理(5/12):理解SQL代理错误日志

    SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 如我们在这个系列的前几篇文章所见,SQL ...

  9. lumen 错误&日志

    1.简介 开始一个新的Lumen项目的时候,错误和异常处理已经默认为你配置好了.此外,Lumen还集成了提供各种功能强大日志处理器的Monolog日志库. 2.配置 2.1 错误详情 配置文件.env ...

随机推荐

  1. php_ThinkPHP的RBAC(基于角色权限控制)详解

    一.什么是RBAC 基于角色的访问控制(Role-Based Access Control)作为传统访问控制(自主访问,强制访问)的有前景的代替受到广泛的关注. 在RBAC中,权限与角色相关联,用户通 ...

  2. 【机器学习算法-python实现】KNN-k近邻算法的实现(附源代码)

    ,400],[200,5],[100,77],[40,300]]) shape:显示(行,列)例:shape(group)=(4,2) zeros:列出一个同样格式的空矩阵,例:zeros(group ...

  3. C#中ISpostback

    响应客户端控件时ispostback为true 代码: using System; using System.Collections.Generic; using System.Linq; using ...

  4. 突破IP限制动态替换代理ip。

    须要导入的两个jar包 实现的javabean <span style="font-size:18px;">package com.jx.po; public clas ...

  5. 多线程——@synchronized(object)

    @synchronized 的作用是创建一个相互排斥锁,保证此时没有其他线程对self对象进行改动.这个是objective-c的一个锁定令牌,防止self对象在同一时间内被其他线程訪问,起到线程的保 ...

  6. 客户端程序通过TCP通信传送"小文件"到服务器

    客户端程序通过TCP通信传送"小文件"到服务器 [c#源码分享]客户端程序通过TCP通信传送"小文件"到服务器 源码  (不包含通信框架源码,通信框架源码请另行 ...

  7. 01. SQL Server 如何读写数据

    原文:01. SQL Server 如何读写数据 一. 数据读写流程简要SQL Server作为一个关系型数据库,自然也维持了事务的ACID特性,数据库的读写冲突由事务隔离级别控制.无论有没有显示开启 ...

  8. OpenGL+VS2013+WIN7(64)组态

    1.下载windows在下面glut安装文件:http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip 2. 拆开发现五个文件 ...

  9. POJ 3654 &amp; ZOJ 2936 &amp; HDU 2723 Electronic Document Security(模拟)

    题目链接: PKU:http://poj.org/problem?id=3654 ZJU:http://acm.zju.edu.cn/onlinejudge/showProblem.do?proble ...

  10. 使用c#给outlook添加任务、发送邮件

    原文:使用c#给outlook添加任务.发送邮件 c#在使用outlook提供的一些API时,需要将outlook相关的com引用到项目中. 具体方法就是用vs打开工程后,在工程上添加引用,在com选 ...