Ho appena installato ELMAH.MVC (ulteriori informazioni here) e mi chiedevo dove sono stati salvati i suoi dati. Ho letto che puoi scegliere di configurare il database per l'archiviazione ma sembra che l'installazione predefinita usi "in memoria"? Come funziona? Se riciclo il pool di app o il sito Web IIS, perdo tutti i dati? Grazie!Dove ELMAH salva i suoi dati?
risposta
Sì, per impostazione predefinita utilizza la memoria. Al riavvio del pool di applicazioni, si perdono i dati elmah. Se ricordo bene, le vecchie versioni di ELMAH utilizzati cartella App_Data per memorizzare i file XML ... Se si desidera utilizzare il database per archiviare i log, basta specificare stringa di connessione nel vostro ELMAH sezione di configurazione:
<elmah>
...
<errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="ElmahConnectionString"/>
...
</elmah>
si dovrebbe avere ElmahConnectionString nella tua sezione connectionStrings, qualcosa di simile:
<connectionStrings>
<add name="ElmahConnectionString "
connectionString="Initial Catalog=my_database;data source=.\SQLEXPRESS;Integrated Security=SSPI;"
providerName="System.Data.SqlClient" />
...
</connectionStrings>
Here è possibile trovare il file web.config esempio.
Sto ricevendo "Impossibile trovare la stored procedure 'ELMAH_GetErrorsXml'."! Già installato http://nuget.org/packages/elmah.sqlserver ma ancora lo stesso problema. Ricorda che sto usando Elmah.MVC su Elmah (non sono sicuro che faccia la differenza). Qualsiasi aiuto? Grazie! –
Trovato! risposta http://stackoverflow.com/a/5380167/1133338. Ho dovuto eseguire manualmente lo script sql per creare la tabella. Quindi mi stavo chiedendo cosa ha fatto nuget.org/packages/elmah.sqlserver (oltre all'aggiunta di una stringa di connessione vuota al mio web.config? –
Probabilmente ha appena aggiunto la voce errorLog a elmah config ... non può manipolare il tuo database perché "non sa" come connettersi ad esso –
Leggi in "Esaminando l'ErrorLog Class" argomento, e troverete la risposta
Using HTTP Modules and Handlers to Create Pluggable ASP.NET Components
Grazie! Se potessi, segnerei entrambe le risposte come corrette. –
[Questo] (http://code.google.com/p/elmah/) è un collegamento più utile per ulteriori informazioni. –
http://code.google.com/p/elmah/ –
È possibile impostare la maggior parte delle opzioni in web.config/app.config, se si seleziona l'esempio, verranno visualizzate istruzioni (ragionevoli) su come impostare vari tipi di stoccaggio. –