2010-04-23 24 views
3

我們正在將Web部件部署到SharePoint 2007,並且希望包含日誌記錄(log4net)。理想的解決方案是使用數據庫appender來避免知道哪個實際服務器正在執行Web部件的問題。在SharePoint場中協調日誌記錄

此問題曾被幫助過:SharePoint and Log4Net

我已經有log4net在獨立的web應用程序中使用Visual Studio開發服務器使用web.config爲log4net設置和文件appender輸出。我想轉換到SharePoint並仍然使用日誌文件輸出,因此我可以確保它們都先工作,然後更改配置以登錄到數據庫。

這會太麻煩嗎?其他開發人員如何將log4.net添加到SharePoint的解決方案中?使用數據庫是將日誌輸出關聯到服務器的唯一良好解決方案?

更新:我們已經實現了Log4Net,它可以工作到某一點。 SharePoint的安全模型使配置必要的權限變得更加困難。在我們的例子中,我們看到消息在某些情況下不會記錄到日誌文件中。我們在作爲給定帳戶運行的Web服務中使用了日誌記錄代碼。當我們讓它作爲開發者運行時,例如'us \ bob',並且該開發使用調用Web服務的頁面,然後將消息傳遞到日誌文件。另一個未解決的問題是如何考慮寫入系統使用的日誌目錄(即IIS日誌或SharePoint日誌)所需的權限。

回答

2

切換配置以使用數據庫appender當然很容易。您需要決定如何連接到數據庫:集成身份驗證與SQL Server登錄,但兩者都易於配置。

我建議將log4net部署爲單獨的解決方案,因爲Sharepoint不會跟蹤程序集的依賴關係。這同樣適用於您的解決方案將要使用的其他「核心」組件。看看這個問題here

+0

它會工作創建一個名爲'utils'或'框架'的解決方案,並有log4net等。人。作爲功​​能? – 2012-01-10 22:47:43