ASPItalia.Error: logging di errori su database, file e feed RSS
Questo progetto non è altro che un libreria (assembly) creata per facilitare lo storage degli errori che si possono verificare in una nostra applicazione.
Al momento questa versione è compatibile con il .NET Framework 2.0.
Tra le caratteristiche principali di questa libreria troviamo la possibilità di memorizzare gli errori in svariati formati (XML, plain text, feed RSS 2.0, database e registro Eventi di Windows) e la possibilità di parametrizzare il tutto (numero di feed, dimensione massima dei file, stringa di connessione, ecc).
Nel file zip trovere anche una pagina ASP.NET che mostra come modificare i settaggi direttamente da una pagina web, comodo in caso si debbano modificare i parametri a runtime.
Per ciò che riguarda l'installazione è piuttosto semplice, basta referenziare l'assembly nel vostro progetto, creare una cartella "Config" nella root della vostra applicazione (ovviamente il nome della cartella è personalizabilem basta cambiarlo anche all'interno del vostro web.config), creando al suo interno un file error.config strutturato in questo modo:
<?xml version="1.0"?><br /><ModuleSettings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <br /><PrioritySend>4</PrioritySend><br /><FeedEnabled>true</FeedEnabled><br /><FeedNum>15</FeedNum><br /><FeedPath>D:\Aspitalia.Error\wwwroot\LogEvent\Errors\Feed\</FeedPath><br /><FeedName>feed.xml</FeedName><br /><FeedTitolo>Errors feed</FeedTitolo><br /><FeedLink>http://localhost/</FeedLink><br /><FeedDescription>Feed per la traccia degli errori</FeedDescription><br /><XmlEnabled>true</XmlEnabled><br /><XMLName>xmlError</XMLName><br /><XMLPath> D:\Aspitalia.Error\wwwroot\LogEvent\Errors\Xml\</XMLPath><br /><XMLSize>200000</XMLSize><br /><TxtEnabled>true</TxtEnabled><br /><TXTName>txtError</TXTName><br /><TXTSize>200000</TXTSize><br /><TXTPath> D:\Aspitalia.Error\wwwroot\LogEvent\Errors\Txt/</TXTPath><br /><LogEventEnabled>true</LogEventEnabled><br /><LogSource>aspitalia</LogSource><br /><LogName>aspitalia</LogName><br /><DataBaseEnabled>false</DataBaseEnabled><br /><DataBaseString>Data Source=.\SQLEXPRESS;AttachDbFilename= D:\Aspitalia.Error\wwwroot\App_Data\Aspitalia.Test.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True</DataBaseString><br /></ModuleSettings>
Ovviamente sosituiamo i percorsi con quelli giusti per la nostra applicazione.
Per concludere nella sezione <appSettings> del nostro web.config aggiungiamo il collegamento al nostro file di configurazione error.config, quindi:
<appSettings><br /><add key="Error_SettingsFile" value="~/Config/Error.Config"/><br /></appSettings>
Ora la nostra libreria è configurata e funzionante. Per provarla non ci basta che generare un errore all'interno di una nostra pagina.
try<br />{<br />int pippo = Convert.ToInt32("ppp");<br />}<br />catch (Exception exc)<br />{<br />new AppException(exc);<br />throw;<br />}
Solo due piccole note:
- le chiamate per lo storage vengono effettuate in maniera asincrona tramite i thread, in modo da liberare immediatamente le risorse, utile se si deve memorizzare l'errore in sistemi in produzione;
- lo storage su database è stato creato per Sql Server 2000/2005.
All'interno dell'allegato trovate un esempio i sorgenti dell'assembly ed un sito di demo.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.