2012-01-08 67 views
2

我正試圖設置一個簡單的測試用例來推送到WF4中的TraceListener。我創建了一個空的wcf服務庫應用程序(只是默認的get/reply xamlx),並將下面的代碼添加到配置中。我沒有記錄回來。還有其他要求嗎?在WF4中追蹤不起作用?

<system.diagnostics> 
    <sources> 
     <source name="System.Workflow"> 
     <listeners> 
      <add name="System.Workflow" /> 
     </listeners> 
     </source> 
     <source name="System.Workflow.Runtime"> 
     <listeners> 
      <add name="System.Workflow" /> 
     </listeners> 
     </source> 
     <source name="System.Workflow.Runtime.Hosting"> 
     <listeners> 
      <add name="System.Workflow" /> 
     </listeners> 
     </source> 
     <source name="System.Workflow.Runtime.Tracking"> 
     <listeners> 
      <add name="System.Workflow" /> 
     </listeners> 
     </source> 
     <source name="System.Workflow.Activities"> 
     <listeners> 
      <add name="System.Workflow" /> 
     </listeners> 
     </source> 
    </sources> 
    <sharedListeners> 
     <add name="System.Workflow" 
     type="System.Diagnostics.TextWriterTraceListener" 
     initializeData="c:\System.Workflow.trace.log" 
     traceOutputOptions="DateTime" /> 
    </sharedListeners> 
    <switches> 
     <add name="System.Workflow.Runtime" value="Verbose" /> 
     <add name="System.Workflow.Runtime.Hosting" value="Verbose" /> 
     <add name="System.Workflow.Runtime.Tracking" value="Verbose" /> 
     <add name="System.Workflow.Activities" value="Verbose" /> 
     <add name="System.Workflow.Activities.Rules" value="Verbose" /> 
    </switches> 
    </system.diagnostics> 
+0

補充信息:我還添加了System.ServiceHost源的配置,即立即開始記錄,所以它不是一個文件權限的事情。我只是沒有從System.Workflow。*中獲得任何信息。 – XeroxDucati 2012-01-08 19:57:29

+0

您是否使用.NET 4客戶端配置文件? – SliverNinja 2012-01-10 15:04:02

+0

不,我沒有使用客戶端配置文件 – XeroxDucati 2012-01-10 20:32:46

回答

3

這應該工作:

<system.diagnostics> 
     <sources> 
      <source name="System.Activities" switchValue="Verbose"> 
       <listeners> 
        <add name="textListener" /> 
       </listeners> 
      </source> 
     </sources> 
     <sharedListeners> 
      <add name="textListener" 
       type="System.Diagnostics.TextWriterTraceListener" 
       initializeData="E:\WORK\POC\MyTraceLog.txt" 
       traceOutputOptions="ProcessId, DateTime" /> 
     </sharedListeners> 
     <trace autoflush="true" indentsize="4"> 
      <listeners> 
       <add name="textListener" /> 
      </listeners> 
     </trace> 
    </system.diagnostics>