2011-10-17 30 views
3

我在我的ASP.NET MVC 3應用程序中爲我的記錄器使用了System.Diagnostics + Essential.Diagnostics。這裏是我的web.config:用Essential.Diagnostics存儲日誌文件的相對路徑

<system.diagnostics> 
    <trace autoflush="true" /> 
    <sources> 
     <source name="requests" switchValue="All"> 
      <listeners> 
       <remove name="default" /> 
       <add name="rollingxml" /> 
      </listeners> 
     </source> 
    </sources> 
    <sharedListeners> 
     <add name="rollingxml" 
      type="Essential.Diagnostics.RollingXmlTraceListener, Essential.Diagnostics" 
      initializeData="e:\myapi\v2\App_Data\Logfiles\{ApplicationName}-{LocalDateTime:yyyy-MM-dd}.svclog" 
     /> 
    </sharedListeners> 
</system.diagnostics> 

正如你可以看到,文件夾路徑來存儲日誌文件被硬編碼爲e:\myapi\v2\App_Data\Logfiles\

我希望把日誌文件到我的應用程序的App_Data文件夾,但由於應用程序被放置在不同的位置在我的開發PC,臨時服務器,主服務器,我需要把相對路徑在initializeData。類似於.\App_Data\Logfiles\。我試過.\App_Data\Logfiles\,但它去了c:\windows\system32\inetsrv\App_Data\Logfiles\

是否可以指向我的應用程序文件夾使用Essential.Diagnostics的相對路徑?

+0

我不熟悉Essential.Diagnostics但在log4net的,你可以使用環境變量在配置指示的路徑。 Essential.Diagnostics是否支持路徑中的環境變量? –

+0

@HectorCorrea我不認爲它有這個功能,但我也不熟悉它。 –

回答