0

这个 stackoverflow 问题的答案讨论了如何使用 Elmah 手动或以编程方式记录处理的异常,但不讨论成本。使用以下记录处理的异常之间的(理论上)成本差异是什么?

  • Elmah 的 ErrorSignal.Raise
  • Elmah 的 ErrorLog.Log
  • System.Diagnostics.TraceSource(或其他一些日志库)
4

1 回答 1

1

这不是您问题的真正答案,而是一个讨论点。为什么知道使用 Elmah 的成本(我假设是执行时间?)很重要?

这可能是过早优化的情况。这里或那里的一百毫秒应该无关紧要,除非在一个紧密、长的循环中。如果您的应用程序抛出了足够多的错误,以至于 Elmah 的额外成本累积到拖累性能的地步,我认为您应该转而查看为什么会抛出这么多异常。

是为了捍卫它对你的同行的使用吗?大多数日志记录块将表现出非常相似的性能特征,其中最大的因素之一是日志目标的位置或性质。将日志写入磁盘或网络目的地等 I/O 操作将比其他日志记录代码花费更多的时间。

于 2012-12-06T19:56:16.123 回答