【问题标题】:ELMAH vs Enterprise Library Exception Handling BlockELMAH 与企业库异常处理块
【发布时间】:2010-10-30 18:22:17
【问题描述】:

我的团队目前正在构建一个 ASP.NET MVC 应用程序,我们正在尝试决定实施哪些框架来处理错误处理和日志记录。

选择其中一个而不是另一个的原因是什么?

【问题讨论】:

  • 为什么不考虑log4net?
  • log4net 不进行异常处理。它只记录它们(例如将它们写入文件、数据库、发送电子邮件......)。 ELMAH 和 EL_EHB 允许您在发生异常时定义策略。例如,当发生这种类型的异常时,请执行此操作。记录器和异常处理程序是互补的。

标签: .net asp.net asp.net-mvc exception-handling elmah


【解决方案1】:

ELMAH 简单、易于使用且易于实施。 EntLib 是大的、“企业”和强大的。就您而言,根据我对您的情况的了解很少,我会毫不犹豫地推荐任何东西。但是,如果我必须为您选择一个,我会说 ELMAH,原因已说明。

【讨论】:

  • 有什么我可以提供的信息可以使您的推荐更容易吗? - 谢谢
  • 这将是一个什么样的应用程序?您需要异常策略管理还是只需要异常日志记录?
【解决方案2】:

就个人而言,我一直在为我们的一些客户使用企业库,但我还没有使用 ELMAH。这是我对 Ent Lib 的看法。

  • 您需要一点时间来熟悉 Ent Lib - 这不是 5 秒安装并开始使用它的事情。
  • 在 app.config/web.config 文件中有很多配置要做,只是为了让它工作。也就是说,一旦你理解了它,在其他项目上就更容易了。
  • 您必须实现日志记录块,而不仅仅是异常处理块才能在某处记录信息(事件日志、平面文件、数据库等)
  • 它不仅仅用于记录异常。例如,我们的许多客户都希望在用户登录或退出应用程序时获取日志事件。
  • 您可以使用配置文件根据环境更改日志记录的工作方式(例如,记录生产的异常情况,记录开发的所有内容等)。
  • 不仅适用于网络,还适用于各种应用程序。

对 ELMAH 的粗略一瞥让我相信这是快速完成任务的好方法。从长远来看,您可能想要一些更强大的东西。

【讨论】:

    【解决方案3】:

    我可能在这里偏离了基地,这种情况经常发生,但 EntLibrary 旨在帮助开发异常处理,而 ELMAH 只是要向您展示异常发生的时间和地点。如果您只想要异常报告,请使用 ELMAH,如果您需要更强大的 EntLib。

    【讨论】:

      【解决方案4】:

      此外,Elmah 专为捕获和记录未处理异常而设计。它可以配置为记录捕获的异常,但这是最近添加的,并不是它的主要用途。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-12-27
        • 2011-02-27
        • 2012-04-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多