Śledzenie przepływu pracy
Śledzenie przepływu pracy umożliwia przechwytywanie informacji diagnostycznych przy użyciu odbiorników śledzenia programu .NET Framework. Śledzenie można włączyć, jeśli zostanie wykryty problem z aplikacją, a następnie ponownie wyłączony po rozwiązaniu problemu. Istnieją dwa sposoby włączania śledzenia debugowania dla przepływów pracy. Można go skonfigurować za pomocą podglądu śledzenia zdarzeń lub użyć System.Diagnostics do wysyłania zdarzeń śledzenia do pliku.
Włączanie śledzenia debugowania w funkcji ETW
Aby włączyć śledzenie przy użyciu funkcji ETW, włącz kanał debugowania w Podgląd zdarzeń:
Przejdź do węzła dzienników analitycznych i debugowania w Podgląd zdarzeń.
W widoku drzewa w Podgląd zdarzeń przejdź do pozycji Podgląd zdarzeń-Applications and Services Logs-Microsoft-Windows-Application>>>> Server-Applications. Kliknij prawym przyciskiem myszy pozycję Aplikacje serwera aplikacji i wybierz pozycję View-Show> Analytic and Debug Logs (Wyświetl dzienniki analityczne i debugowania). Kliknij prawym przyciskiem myszy pozycję Debuguj i wybierz pozycję Włącz dziennik.
Gdy przepływ pracy uruchamia debugowanie i ślady są emitowane do kanału debugowania ETW, można je wyświetlić w Podgląd zdarzeń. Przejdź do pozycji Podgląd zdarzeń-Applications> and Services Logs-Microsoft-Windows-Application>> Server-Applications-Applications>. Kliknij prawym przyciskiem myszy pozycję Debuguj i wybierz polecenie Odśwież.
Domyślny rozmiar buforu śledzenia analitycznego wynosi tylko 4 kilobajty (KB); zaleca się zwiększenie rozmiaru do 32 KB. W tym celu wykonaj następujące kroki.
Wykonaj następujące polecenie w bieżącym katalogu struktury (na przykład C:\Windows\Microsoft.NET\Framework\v4.0.21203):
wevtutil um Microsoft.Windows.ApplicationServer.Applications.man
<Zmień wartość bufferSize> w pliku Windows.ApplicationServer.Applications.man na 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>
Wykonaj następujące polecenie w bieżącym katalogu struktury (na przykład C:\Windows\Microsoft.NET\Framework\v4.0.21203):
wevtutil im Microsoft.Windows.ApplicationServer.Applications.man
Uwaga
Jeśli używasz profilu klienta programu .NET Framework 4, musisz najpierw zarejestrować manifest ETW, uruchamiając następujące polecenie z katalogu .NET Framework 4: ServiceModelReg.exe –i –c:etw
Włączanie śledzenia debugowania przy użyciu elementu System.Diagnostics
Te odbiorniki można skonfigurować w pliku App.config aplikacji przepływu pracy lub web.config dla usługi przepływu pracy. W tym przykładzie parametr jest TextWriterTraceListener skonfigurowany do zapisywania informacji śledzenia w pliku MyTraceLog.txt w bieżącym katalogu.
<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>