Rastreamento de fluxo de trabalho
O rastreamento de fluxo de trabalho oferece uma maneira de capturar informações de diagnóstico usando ouvintes de rastreamento do .NET Framework. O rastreamento pode ser ativado se um problema for detetado com o aplicativo e, em seguida, desativado novamente assim que o problema for resolvido. Há duas maneiras de habilitar o rastreamento de depuração para fluxos de trabalho. Você pode configurá-lo usando o visualizador de Rastreamento de Eventos ou pode usar System.Diagnostics para enviar eventos de rastreamento para um arquivo.
Ativando o rastreamento de depuração no ETW
Para habilitar o rastreamento usando ETW, habilite o canal Debug no Visualizador de Eventos:
Navegue até o nó de logs analíticos e de depuração no Visualizador de Eventos.
Na vista em árvore no Visualizador de Eventos, navegue até Visualizador de Eventos-Aplicações> e Registos de Serviços-Microsoft-Windows-Application>>> Server-Applications. Clique com o botão direito do mouse em Application Server-Applications e selecione View-Show> Analytic and Debug Logs. Clique com o botão direito do mouse em Depurar e selecione Ativar Log.
Quando um fluxo de trabalho executa a depuração e os rastreamentos são emitidos para o canal de depuração ETW, eles podem ser exibidos no Visualizador de Eventos. Navegue até Visualizador de Eventos-Logs> de Aplicativos e Serviços-Microsoft-Windows-Application>>> Server-Applications. Clique com o botão direito do mouse em Depurar e selecione Atualizar.
O tamanho padrão do buffer de rastreamento analítico é de apenas 4 kilobytes (KB); recomenda-se aumentar o tamanho para 32 KB. Para fazer isso, execute as seguintes etapas.
Execute o seguinte comando no diretório de estrutura atual (por exemplo, C:\Windows\Microsoft.NET\Framework\v4.0.21203):
wevtutil um Microsoft.Windows.ApplicationServer.Applications.man
Altere o <valor bufferSize> no arquivo Windows.ApplicationServer.Applications.man para 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>
Execute o seguinte comando no diretório de estrutura atual (por exemplo, C:\Windows\Microsoft.NET\Framework\v4.0.21203):
wevtutil im Microsoft.Windows.ApplicationServer.Applications.man
Nota
Se você estiver usando o .NET Framework 4 Client Profile, você deve primeiro registrar o manifesto ETW executando o seguinte comando do diretório .NET Framework 4: ServiceModelReg.exe –i –c:etw
Ativando o rastreamento de depuração usando System.Diagnostics
Esses ouvintes podem ser configurados no arquivo App.config do aplicativo de fluxo de trabalho ou no Web.config para um serviço de fluxo de trabalho. Neste exemplo, um TextWriterTraceListener é configurado para salvar informações de rastreamento no arquivo MyTraceLog.txt no diretório atual.
<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>