Partilhar via


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. Existem duas maneiras de activar o rastreio 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 debug no ETW

Para habilitar o rastreamento usando ETW, habilite o canal Debug no Visualizador de Eventos:

  1. Navegue até o nó de logs analíticos e de depuração no Visualizador de Eventos.

  2. Na vista em árvore no Visualizador de Eventos, navegue até >. Clique com o botão direito do rato em Application Server-Applications e selecione Ver-Mostrar> Logs Analíticos e de Depuração. Clique com o botão direito do mouse em Depurar e selecione Ativar Log.

  3. 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 Aplicações e Serviços->Microsoft->Windows->Servidor de Aplicações-Aplicações. Clique com o botão direito do mouse em Depurar e selecione Atualizar.

  4. 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.

    1. 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

    2. Altere o valor de <bufferSize> no ficheiro 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>
      
    3. 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

Observação

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 de um serviço de fluxo de trabalho. Neste exemplo, TextWriterTraceListener foi configurado para guardar informações de rastreamento no ficheiro 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>

Ver também