2013-05-21 2 views
6

Ich verwende eine MVC-Website unter Windows Azure und verwende RavenDB Embedded. Wenn die Website „kalt“ (aus der Azure-Instanz entladen), erhalte ich die folgende Fehlermeldung auf dem ersten Treffer auf die Website:Fehler beim Schreiben in die Protokolldatei mit RavenDB Embedded unter Windows Azure

Server Error in '/' Application.

Failure writing to log file

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: Microsoft.Isam.Esent.Interop.EsentLogWriteFailException: Failure writing to log file

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[EsentLogWriteFailException: Failure writing to log file]
Microsoft.Isam.Esent.Interop.Api.Check(Int32 err) +21
Microsoft.Isam.Esent.Interop.Api.JetInit(JET_INSTANCE& instance) +23
Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs) +309

[InvalidOperationException: Could not open transactional storage: 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 configuration) +994
Raven.Client.Embedded.EmbeddableDocumentStore.InitializeInternal() +313 Raven.Client.Document.DocumentStore.Initialize() +463 Reflix.MvcApplication.InitializeRavenDB(String dataDirectory, Boolean rethrowException) +135 Reflix.MvcApplication.Application_Start() +131

[HttpException (0x80004005): Could not open transactional storage: C:\DWASFiles\Sites\reflix\VirtualDirectory0\site\wwwroot\App_Data\Data] System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app) +9859441
System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +118
System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +172
System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +336
System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +296

[HttpException (0x80004005): Could not open transactional storage: C:\DWASFiles\Sites\reflix\VirtualDirectory0\site\wwwroot\App_Data\Data] System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +9873784 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +101 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +254

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.18033

Wenn ich eine Minute warten, oder zwei, die Website kommt gut. Es ist also eindeutig ein Erststartproblem. Hat jemand Ideen, wie man das Problem lösen kann?

Meine Konfiguration:

  • MVC 4
  • .NET 4.5
  • RavenDB 2.0.2360

Update: Das Azure-Team dies als eine Suche möglicher Fehler bei den Azure-Websites. Weitere Updates sobald ich etwas höre.

+0

Verwenden Sie ** Azure-Websites ** oder ** Azure-Webrolle **? – SliverNinja

+1

Azure Websites. – mgnoonan

+0

Plus eins für diese Frage, erleben Sie das gleiche Problem! – Fore

Antwort

1

Dies als Bug in Azure Websites bestätigt wurde, die nun gewalzt wurde aus. Ich habe keine zusätzlichen Details, aber die Seite funktioniert jetzt (30.08.2013) und ich habe keine strukturellen Änderungen am Code vorgenommen.

0

Schauen Sie sich das Ereignisprotokoll an, es gibt Ihnen weitere Informationen. Es sieht aus wie etwas zu verhindern, ist die richtige Schreib in die Protokolle, Berechtigungen überprüfen, insbesondere, können Sie CREATE_FILE die Berechtigung haben, aber schreiben Sie nicht die Erlaubnis

+0

Follow-up-Frage: Wie sieht man die Logs im Embedded-Modus? – mgnoonan

+0

Ich meine, ich weiß, dass es einen "logs" -Ordner gibt, aber das einzige, was drin ist, sind einige 'RVN.log'-Dateien und einige' jrs'-Dateien, die in einem Texteditor nicht lesbar zu sein scheinen. Muss ich sie auf einen lokalen Server d/l kopieren und in den Ordner 'logs' kopieren? – mgnoonan

Verwandte Themen