Elmah,错误最有效的持久性机制是什么?

时间:2016-06-14 08:32:43

标签: asp.net-mvc azure azure-sql-database azure-web-sites elmah

我在Azure网络应用程序中有一个连接到SQL Azure的asp.net MVC应用程序。

目前我将Elmah错误存储在App_data中。这些可以建立起来。我也觉得写这些文件是低效的。此外,当您下载“Next 50”错误时,服务器上可能会出现命中。

如何改进持久性策略?我怀疑它可能是使用数据库。这是应用程序数据库的单独数据库还是同一个数据库?

我也正在测试Application Insights。目前我怀疑Elmah在Application Insights中扮演一个角色,但我可能错了。

感谢。

2 个答案:

答案 0 :(得分:1)

Elmah数据库可以在单独的Azure数据库中使用,不使用“业务”数据库DTU,顺便说一句,如果你想记录很多东西,就不会影响它的性能。

一方面,Elmah可以处理“功能”日志,另一方面应用程序Insight可以执行远程测量和监控日志,此外,您还可以在Azure门户中启用服务器和应用程序日志,以获取存储帐户中的自动日志,here概述了这些服务器和应用程序日志。

答案 1 :(得分:1)

如前面的答案所述,您可以将日志文件存储在sql azure数据库中。或者你可以使用更便宜的azure表存储选项,这是一个基于无sql的数据存储。有一个可用的提供商。 https://github.com/MisinformedDNA/Elmah.AzureTableStorage https://www.nuget.org/packages/WindowsAzure.ELMAH.Tables/ 或者,如果您更多地查看日志的数据转储,请说xml格式并且不需要可查询的格式,您可以选择更便宜的azure blob存储。 https://github.com/dampee/Blob-Elmah