【问题标题】:Failure writing to log file with RavenDB Embedded on Windows Azure使用 Windows Azure 上嵌入的 RavenDB 写入日志文件失败
【发布时间】:2013-05-21 19:00:09
【问题描述】:

我在 Windows Azure 上运行一个 MVC 网站并使用嵌入式 RavenDB。如果网站是“冷的”(从 Azure 实例卸载),我会在第一次访问网站时收到以下错误消息:

“/”应用程序中的服务器错误。

写入日志文件失败

描述:执行过程中发生了未处理的异常 当前的网络请求。请查看堆栈跟踪以获取更多信息 有关错误的信息以及它在代码中的来源。

异常详情: Microsoft.Isam.Esent.Interop.EsentLogWriteFailException:失败 写入日志文件

来源错误:

在执行过程中产生了一个未处理的异常 当前的网络请求。有关原产地和位置的信息 可以使用下面的异常堆栈跟踪来识别异常。

堆栈跟踪:

[EsentLogWriteFailException:写入日志文件失败]
Microsoft.Isam.Esent.Interop.Api.Check(Int32 err) +21
Microsoft.Isam.Esent.Interop.Api.JetInit(JET_INSTANCE& 实例) +23
Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs) +309

[InvalidOperationException:无法打开事务存储: C:\DWASFiles\Sites\reflix\VirtualDirectory0\site\wwwroot\App_Data\Data] Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs) +443
Raven.Database.DocumentDatabase..ctor(InMemoryRavenConfiguration 配置)+994
Raven.Client.Embedded.EmbeddableDocumentStore.InitializeInternal() +313 Raven.Client.Document.DocumentStore.Initialize() +463 Reflix.MvcApplication.InitializeRavenDB(字符串数据目录,布尔值 rethrowException) +135 Reflix.MvcApplication.Application_Start() +131

[HttpException (0x80004005):无法打开事务存储: C:\DWASFiles\Sites\reflix\VirtualDirectory0\site\wwwroot\App_Data\Data] System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext 上下文,HttpApplication 应用程序)+9859441
System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext、HttpContext 上下文、MethodInfo[] 处理程序)+118
System.Web.HttpApplication.InitSpecial(HttpApplicationState 状态, MethodInfo[] 处理程序、IntPtr appContext、HttpContext 上下文)+172
System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext、HttpContext 上下文)+336
System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +296

[HttpException (0x80004005):无法打开事务存储: C:\DWASFiles\Sites\reflix\VirtualDirectory0\site\wwwroot\App_Data\Data] System.Web.HttpRuntime.FirstRequestInit(HttpContext 上下文) +9873784 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext 上下文) +101 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest WR,HttpContext 上下文)+254

版本信息:Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.0.30319.18033

如果我等一两分钟,网站就会正常运行。很明显,这是一个首次启动的问题。有人知道如何解决这个问题吗?

我的配置:

  • MVC 4
  • .NET 4.5
  • RavenDB 2.0.2360

更新: Azure 团队正在将此视为 Azure 网站可能存在的缺陷。更多更新,我一听到任何消息。

【问题讨论】:

  • 您使用的是 Azure 网站 还是 Azure Web 角色
  • 这个问题加一个,遇到同样的问题!

标签: asp.net-mvc-4 azure ravendb azure-web-app-service


【解决方案1】:

这已被确认为 Azure 网站中的一个错误,现已推出。我没有任何其他详细信息,但该网站现在可以正常工作(2013 年 8 月 30 日),并且我没有对代码进行结构更改。

【讨论】:

    【解决方案2】:

    查看事件日志,它会为您提供更多信息。 看起来 某事 阻止了正确写入日志,检查权限,特别是,您可能有 CREATE_FILE 权限,但没有 WRITE 权限

    【讨论】:

    • 后续问题:在嵌入式模式下运行时如何查看日志?
    • 我的意思是,我知道有一个 logs 文件夹,但其中唯一的东西是一些二进制 RVN.log 文件和一些 jrs 文件在文本编辑器。我必须将它们复制到本地服务器并复制到logs 文件夹吗?
    猜你喜欢
    • 1970-01-01
    • 2014-10-29
    • 2023-02-25
    • 2016-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多