1

這是破壞我的頭並且文檔似乎對於此庫不存在。 我有一個滾動平面文件偵聽器...我想包括任何消息寫入到偵聽器的調用堆棧。如何將TraceOutputOptions包含在企業庫日誌記錄的輸出中

<add name="RollingFileLog" 
      fileName="C:\Rainmaker\Logs\SampleArchitectureService.Log" 
      ... snipped for brevity 
      traceOutputOptions="Callstack" /> 

我需要在我的格式化程序中包含什麼來獲取該Callstack/Trace信息。格式化低於

<add type="Microsoft.Practices.EnterpriseLibrary.Logging.Formatters.TextFormatter, ..." 
      name="TextFormatter" 
      template="{timestamp(local)}: [{category}/{severity}] - {message} - ****WHATGOES HERE***" /> 

我用盡了一切,看在擴展屬性字典,使用{屬性()}和{鍵值()}令牌進行其中有沒有文檔或者。

有人可以請我解釋一下,這traceOutputOptions屬性是爲了什麼,如果這是我的想法,我該如何訪問這些屬性。

回答

2

從MSDN頁

的TraceOutputOptions屬性跟蹤輸出選項確定跟蹤輸出的可選內容。該屬性可以在配置文件中設置,也可以在執行過程中以編程方式設置,以包含特定於代碼段的其他數據。例如,可以將控制檯跟蹤偵聽器的TraceOutputOptions屬性設置爲TraceOptions.Callstack,以將調用堆棧信息添加到跟蹤輸出。

還記得它不是由所有跟蹤偵聽 http://msdn.microsoft.com/en-us/library/system.diagnostics.tracelistener.traceoutputoptions.aspx

我見得到調用堆棧信息到您的文件的唯一方法是通過擴展屬性的文本格式化詞典支持。

template="Extended Properties: {dictionary({key} - {value}{newline})}" 

找到一篇有趣的文章,這應該對你有幫助。 「如何輸出TraceOutputOptions值」 http://entlib.codeplex.com/discussions/344343

+0

注意別人有問題:如果使用配置文件來設置輸出選項中,traceOutputOptions文件中的設置是區分大小寫的,必須有一個初步的小寫字母「T」,因爲它在這句話中。 – Resource 2015-06-25 17:19:53

相關問題