2010-01-26 198 views
0

我有一個ASP.NET MVC應用程序託管在webhost4life
什麼是保存日誌的好方法?
我有我的網站上傳到FTP,我只是做有效網站日誌(IIS7,託管)

File.AppendAllText("log.txt", "Ooops, we have an error" + e.Message); 

還是有更好的方法訪問?發電子郵件?將日誌保存到數據庫中?

回答

2

我總是嘗試登錄到數據庫,並在數據庫無法訪問時回退到文件(可能是因爲異常)。這允許您直接對日誌運行查詢和報告,並立即找出問題所在。您還可以通過存儲重要的外部事件並對它們進行標記等方式對應用程序執行「健康檢查」。

1

避免寫入文件系統;這可能會在嘗試寫入相同文件的線程之間產生衝突/爭用條件。數據庫是這個問題的絕妙解決方案,並提供一些很好的好處,例如能夠從標準化數據輕鬆生成報告。

另外,你正在登錄什麼樣的信息? IIS日誌非常詳細。保存這些日誌中已有的信息重複工作(服務器寫入其日誌,然後編寫自己的日誌),這當然會導致性能下降。

+0

我在webhost4life.com上託管我的網站我不認爲我可以訪問IIS日誌文件。 – 2010-01-26 17:43:06

+0

然後按照Joel的建議堅持數據庫;否則你將面臨線程之間文件鎖定衝突的可能性。數據庫故障非常罕見,我不擔心寫入文件作爲備份,但您的應用程序可能並非如此。 – 2010-01-26 19:24:08