我正在尝试设置一个简单的测试用例,在 WF4 中推送到 TraceListener。我创建了一个空的 wcf 服务库应用程序(只是默认的获取/回复 xamlx)并将以下内容添加到配置中。我没有重新登录。还需要什么吗?
<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>
最佳答案
这应该有效:
<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>
关于workflow-foundation - WF4 中的跟踪不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8780495/