2012-11-27 133 views

回答

0

我沒有看到你的配置實例,但..

我覺得這是最好不要使用平面文件開發之外。事件日誌或數據庫偵聽器更適合生產中的Web應用程序。

如果您必須使用平面文件,您需要爲該應用程序池的帳戶(對於分配給該Web應用程序的應用程序池)寫入對該文件應創建的目錄的訪問權限。默認情況下,我認爲這是Web應用程序的bin目錄,除非您在配置中的文件名中包含路徑。

+0

我喜歡用FlatFileTraceListener針對這些錯誤的特殊源(假定權限正確配置),因爲我想要一個不同的跟蹤偵聽比失敗的一個,我也想有更少依賴一個簡單的跟蹤監聽器(如數據庫,網絡,事件日誌等)。 –

2

中發揮Windows標識(取決於你如何驗證)

var principal = ClaimsPrincipal.Current; //normally this reverts to Thread.CurrentPrincipal, but can be changed 
return principal.Identity.Name; 

var windowsIdentity = WindowsIdentity.GetCurrent(); 
      if (windowsIdentity != null) 
      { 
       return windowsIdentity.Name; 
      } 

執行Windows標識是否需要在目錄中創建權限,寫權限在指定的文件你EL配置。 您可以使用配置將文件放置在任何地方。沒有路徑的文件的默認值是包含程序集dll的開始項目目錄。

請參閱IIS網站所使用的應用程序池。池確定Windows標識。請參閱Pool的高級設置選項卡。這裏定義了要使用的身份識別方法。

0

這可能要看是什麼上下文中運行你的應用程序。該應用程序池線程負責寫日誌,以便給讀/寫文件夾的權限相同的身份爲您的應用程序池。我認爲這是默認情況下的NETWORKSERVICE。

相關問題