Delen via


Werkstroomtracering

Werkstroomtracering biedt een manier om diagnostische gegevens vast te leggen met behulp van traceringslisteners van .NET Framework. Tracering kan worden ingeschakeld als er een probleem met de toepassing wordt gedetecteerd en vervolgens opnieuw is uitgeschakeld zodra het probleem is opgelost. Er zijn twee manieren waarop u foutopsporing voor werkstromen kunt inschakelen. U kunt het configureren met behulp van de Event Trace Viewer, of u kunt System.Diagnostics gebruiken om traceringsevenementen naar een bestand te verzenden.

Foutopsporing inschakelen in ETW

Als u tracering wilt inschakelen met ETW, schakelt u het foutopsporingskanaal in Logboekweergave in.

  1. Navigeer naar het analyse- en foutopsporingslogboekknooppunt in Logboekviewer.

  2. Navigeer in de boomstructuur in Logboeken naar Logboeken->Toepassingen en serviceslogboeken->Microsoft->Windows->Application Server-Toepassingen. Klik met de rechtermuisknop op Toepassingsservertoepassingen en selecteer >Analyse- en foutopsporingslogboeken weergeven. Klik met de rechtermuisknop op Fouten opsporen en selecteer Logboek inschakelen.

  3. Wanneer een workflow de foutopsporing uitvoert en traceringen naar het ETW-foutopsporingskanaal worden verzonden, kunnen deze worden bekeken in de Event Viewer. Navigeer naar >. Klik met de rechtermuisknop op Fouten opsporen en selecteer Vernieuwen.

  4. De standaardgrootte van de analytische traceringsbuffer is slechts 4 kilobytes (KB); het wordt aanbevolen om de grootte te verhogen tot 32 kB. Volg de volgende stappen om dit te doen.

    1. Voer de volgende opdracht uit in de huidige frameworkmap (bijvoorbeeld C:\Windows\Microsoft.NET\Framework\v4.0.21203): wevtutil um Microsoft.Windows.ApplicationServer.Applications.man

    2. Wijzig de waarde van bufferSize in het bestand Windows.ApplicationServer.Applications.man naar 32.

      <channel name="Microsoft-Windows-Application Server-Applications/Analytic" chid="ANALYTIC_CHANNEL" symbol="ANALYTIC_CHANNEL" type="Analytic" enabled="false" isolation="Application" message="$(string.MICROSOFT_WINDOWS_APPLICATIONSERVER_APPLICATIONS.channel.ANALYTIC_CHANNEL.message)" >
                  <publishing>
                    <bufferSize>32</bufferSize>
                  </publishing>
                </channel>
      
    3. Voer de volgende opdracht uit in de huidige frameworkmap (bijvoorbeeld C:\Windows\Microsoft.NET\Framework\v4.0.21203): wevtutil im Microsoft.Windows.ApplicationServer.Applications.man

Opmerking

Als u het .NET Framework 4-clientprofiel gebruikt, moet u eerst het ETW-manifest registreren door de volgende opdracht uit te voeren vanuit de map .NET Framework 4: ServiceModelReg.exe -i -c:etw

Tracering van foutopsporing inschakelen met System.Diagnostics

Deze listeners kunnen worden geconfigureerd in het App.config-bestand van de werkstroomtoepassing of de Web.config voor een werkstroomservice. In dit voorbeeld is een TextWriterTraceListener geconfigureerd om traceringsgegevens op te slaan in het MyTraceLog.txt-bestand in de huidige directory.

<configuration>
  <system.diagnostics>
    <sources>
      <source name="System.Activities" switchValue="Information">
        <listeners>
          <add name="textListener" />
          <remove name="Default" />
        </listeners>
      </source>
    </sources>
    <sharedListeners>
      <add name="textListener"
           type="System.Diagnostics.TextWriterTraceListener"
           initializeData="MyTraceLog.txt"
           traceOutputOptions="ProcessId, DateTime" />
    </sharedListeners>
    <trace autoflush="true" indentsize="4">
      <listeners>
        <add name="textListener" />
      </listeners>
    </trace>
  </system.diagnostics>
</configuration>

Zie ook