Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O Windows Communication Foundation (WCF) Service Trace Viewer Tool ajuda você a analisar rastreamentos de diagnóstico gerados pelo WCF. O Visualizador de Rastreamento de Serviço fornece uma maneira de mesclar, exibir e filtrar facilmente mensagens de rastreamento no log para que você possa diagnosticar, reparar e verificar problemas de serviço do WCF.
Configurando o rastreamento
Os rastreamentos de diagnóstico fornecem informações que mostram o que está acontecendo em toda a operação do aplicativo. Como o nome indica, você pode seguir as operações da origem para o destino e também por meio de pontos intermediários.
Você pode configurar o rastreamento usando o arquivo de configuração do aplicativo, Web.config para aplicativos hospedados na Web ou o Appname.config para aplicativos auto-hospedados. O que se segue é um exemplo:
<system.diagnostics>
<trace autoflush="true" />
<sources>
<source name="System.ServiceModel"
switchValue="Information, ActivityTracing"
propagateActivity="true">
<listeners>
<add name="sdt"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData= "SdrConfigExample.e2e" />
</listeners>
</source>
</sources>
</system.diagnostics>
Neste exemplo, o nome e o tipo do ouvinte de rastreamento são especificados. O ouvinte se chama sdt
, e o ouvinte de rastreamento do .NET Framework padrão (System.Diagnostics.XmlWriterTraceListener) é adicionado como o tipo. O atributo initializeData
é usado para definir o nome do arquivo de log que será atribuído ao Ouvinte como SdrConfigExample.e2e
. Para o arquivo de log, você pode substituir um caminho totalmente qualificado por um nome de arquivo simples.
O exemplo cria um arquivo no diretório raiz chamado SdrConfigExample.e2e. Quando você usa o Visualizador de Rastreamento para abrir o arquivo conforme descrito na seção "Abrir e exibir arquivos de rastreamento do WCF", você pode ver todas as mensagens que foram enviadas.
O nível de rastreamento é controlado pela configuração switchValue
. Os níveis de rastreamento disponíveis são descritos na tabela a seguir.
Nível de rastreamento: | Descrição |
---|---|
Crítico | – Registra em log entradas Fail-Fast e do Log de Eventos, além de informações de correlação do rastreamento. Veja a seguir alguns exemplos de quando você pode usar o nível crítico: - Seu AppDomain caiu devido a uma exceção não tratada. O aplicativo falha ao iniciar. - A mensagem que causou a falha originou-se do processo MyApp.exe. |
Erro | – Registra todas as exceções. Você pode usar o nível de erro nas seguintes situações: – Seu código falhou devido a uma Exceção de Conversão Inválida. – A exceção "falha ao criar ponto de extremidade" está causando a falha do seu aplicativo na inicialização. |
Aviso | – Existe uma condição que pode resultar posteriormente em um erro ou falha crítica. Você pode usar esse nível nas seguintes situações: – O aplicativo está recebendo mais solicitações do que suas configurações de limitação permitem. - A fila de recebimento está em 98% de sua capacidade configurada. |
Informação | – São geradas mensagens úteis para monitorar e diagnosticar o status do sistema, medir o desempenho ou a criação de perfil. Você pode utilizar essas informações para planejamento de capacidade e gerenciamento de desempenho. Você pode usar esse nível nas seguintes situações: - Ocorreu uma falha depois que a mensagem chegou ao AppDomain e foi desserializada. - Ocorreu uma falha durante a criação da associação HTTP. |
Verboso | – Rastreamento em nível de depuração de código de usuário e serviços. Defina esse nível quando: - Você não tem certeza de qual método em seu código foi chamado quando a falha ocorreu. - Você tem um endpoint incorreto configurado e o serviço falhou ao iniciar porque a entrada no repositório de reserva está bloqueada. |
Rastreamento de atividades | Eventos de fluxo entre atividades de processamento e componentes. Esse nível permite que administradores e desenvolvedores correlacionam aplicativos no mesmo domínio do aplicativo. – Rastreamentos de limites de atividades: início/interrupção. – Rastreamentos de transferências. |
Você pode usar add
para especificar o nome e o tipo do ouvinte de rastreamento que deseja usar. Na configuração de exemplo, o Ouvinte é nomeado sdt
e o ouvinte de rastreamento padrão do .NET Framework (System.Diagnostics.XmlWriterTraceListener
) é adicionado como tipo. Use initializeData
para definir o nome do arquivo de log para esse Ouvinte. Além disso, você pode substituir um caminho totalmente qualificado por um nome de arquivo simples.
A partir do .NET Framework 4.8, os controles ComboBox em alguns temas de alto contraste são exibidos na cor correta. Você pode desabilitar essa alteração removendo a seguinte configuração do arquivo svcTraceViewer.exe.config :
<AppContextSwitchOverrides value="Switch.UseLegacyAccessibilityFeatures=false;Switch.UseLegacyAccessibilityFeatures.2=false" />
Usando a ferramenta Visualizador de Rastreamento de Serviço
Abrindo e exibindo arquivos de rastreamento do WCF
O Visualizador de Rastreamento de Serviço dá suporte a três tipos de arquivo:
Arquivo de rastreamento WCF (.svcLog)
Arquivo de Rastreamento de Eventos (.etl)
Arquivo de rastreamento Crimson
O Visualizador de Rastreamento de Serviço permite abrir qualquer arquivo de rastreamento com suporte, adicionar e integrar arquivos de rastreamento adicionais ou abrir e mesclar um grupo de arquivos de rastreamento simultaneamente.
Para abrir um arquivo de rastreamento
- Inicie o Visualizador de Rastreamento de Serviço usando uma janela de comando para navegar até o local de instalação do WCF (C:\Arquivos de Programas\Microsoft SDKs\Windows\v6.0\Bin) e digite
SvcTraceViewer.exe
.
Observação
A ferramenta Visualizador de Rastreamento de Serviço pode se associar a dois tipos de arquivos: .svclog e .stvproj. Você pode usar dois parâmetros na linha de comando para registrar e cancelar o registro das extensões de arquivo.
/register: registre a associação de extensões de arquivo ".svclog" e ".stvproj" com SvcTraceViewer.exe
/unregister: cancela o registro da associação de extensões de arquivo ".svclog" e ".stvproj" com SvcTraceViewer.exe
Quando o Visualizador de Rastreamento de Serviço for iniciado, clique em Arquivo e, em seguida, aponte para Abrir. Navegue até o local onde os arquivos de rastreamento são armazenados.
Clique duas vezes no arquivo de rastreamento que você deseja abrir.
Observação
Pressione SHIFT ao clicar em vários arquivos de rastreamento para selecioná-los e abri-los simultaneamente. O Visualizador de Rastreamento de Serviço mescla o conteúdo de todos os arquivos e apresenta uma visualização. Por exemplo, você pode abrir arquivos de rastreamento do cliente e do serviço. Isso é útil quando você habilita o registro em log de mensagens e a propagação de atividades na configuração. Dessa forma, você pode examinar a troca de mensagens entre o cliente e o serviço. Você também pode arrastar vários arquivos para o visualizador ou usar a guia Projeto . Consulte a seção Gerenciar Projeto para obter mais detalhes.
Para adicionar arquivos de rastreamento adicionais à coleção que está aberta, clique em Arquivo e, em seguida, aponte para Adicionar. Na janela que é aberta, navegue até o local dos arquivos de rastreamento e clique duas vezes no arquivo que você deseja adicionar.
Cuidado
Não é recomendável carregar um arquivo de log de rastreamento maior que 200 MB. Se você tentar carregar um arquivo maior que esse limite, o processo de carregamento poderá levar muito tempo, dependendo do recurso do computador. A ferramenta Visualizador de Rastreamento de Serviço pode não responder por muito tempo ou pode esgotar a memória do computador. É recomendável que você configure o carregamento parcial para evitar isso. Para obter mais informações sobre como fazer isso, consulte a seção "Carregando arquivos de rastreamento grandes".
Rastreamento de eventos e rastreamento Crimson
O formato nativo do visualizador é o formato de rastreamento de atividade que o WCF emite. Os traços emitidos em um formato diferente devem ser convertidos antes que o visualizador os exiba. Atualmente, além do formato de rastreamento de atividades, o visualizador dá suporte ao rastreamento de eventos e ao rastreamento vermelho.
Quando você abre um arquivo que não contém rastreamentos de atividade, o visualizador tenta converter o arquivo. Você deve especificar o nome e o local do arquivo que conterá os dados de rastreamento convertidos. Depois que os dados forem convertidos, o visualizador exibirá o conteúdo do novo arquivo.
Observação
A conversão requer espaço em disco para armazenar os dados de rastreamento convertidos. Verifique se você tem espaço em disco suficiente disponível para armazenar os dados antes de iniciar uma conversão. Caso contrário, a conversão falhará.
Gerenciando projetos
O visualizador dá suporte a projetos para facilitar a exibição de vários arquivos de rastreamento. Por exemplo, se você tiver um arquivo de rastreamento do cliente e um arquivo de rastreamento de serviço, poderá adicioná-los a um projeto. Em seguida, toda vez que você abre o projeto, todos os arquivos de rastreamento no projeto são carregados simultaneamente.
Há duas maneiras de gerenciar projetos:
No menu Arquivo , você pode abrir, salvar e fechar projetos.
Na guia Projeto , você pode adicionar arquivos a um projeto.
Exibindo rastreamentos do WCF
O WCF emite rastreamentos usando o formato de rastreamento de atividade. No modelo de rastreamento de atividades, os rastreamentos individuais são agrupados em atividades de acordo com sua finalidade. O fluxo de controle lógico é transferido entre atividades. Por exemplo, durante o tempo de vida de um aplicativo, muitas "atividades de envio de mensagens" aparecem e desaparecem. Para obter mais informações sobre como exibir rastreamentos e atividades e a interface do usuário do Visualizador de Rastreamento de Serviço também, consulte Usando o Visualizador de Rastreamento de Serviço para exibir rastreamentos correlacionados e solução de problemas.
Alternar para diferentes modos de exibição
O Visualizador de Rastreamento de Serviço fornece os seguintes modos de exibição diferentes. Elas são exibidas como guias no painel esquerdo do Visualizador e também podem ser acessadas no menu Exibir .
Exibição de atividade
Visão do Projeto
Vista de Mensagem
Exibição de gráfico
Exibição de atividade
Depois que os arquivos de rastros forem abertos, você poderá ver os rastros agrupados em atividades e exibidos na vista Atividade no painel esquerdo.
O modo de exibição Atividade exibe nomes de atividade, número de rastreamentos na atividade, tempo de duração, hora de início e hora de término.
Ao clicar em qualquer uma das atividades listadas, os rastros dessa atividade são exibidos no painel de rastreamento à direita. Em seguida, você pode selecionar um traço para ver os seus detalhes.
Você pode selecionar várias atividades pressionando a tecla Ctrl ou Shift e clicando nas atividades desejadas. O painel de rastreamento exibe todos os rastreamentos das atividades selecionadas.
Você pode clicar duas vezes em uma atividade para mostrá-la na exibição Grafo. Uma alternativa é selecionar uma atividade e alternar para a exibição Grafo.
Observação
A atividade "000000000000" é uma atividade especial que não pode ser exibida na Visão Gráfica. Como todas as outras atividades estão vinculadas a ela, exibir essa atividade tem um impacto severo no desempenho.
Você pode clicar no título da coluna para classificar a lista de atividades. As atividades que contêm avisos têm um fundo amarelo e aquelas que contêm erros têm um fundo vermelho.
Há diferentes tipos de atividades e cada tipo corresponde a um ícone no lado esquerdo de cada atividade. Você pode consultar a seção Noções básicas sobre ícones de rastreamento para seu significado.
Visão do Projeto
Essa exibição permite que você gerencie arquivos de rastreamento no projeto atual. Consulte a seção Gerenciar Projeto para obter mais detalhes.
Vista de Mensagem
Essa exibição permite que você exiba todos os rastreamentos de log de mensagens, incluindo ação, data/hora, processo, atividade e de/para, e navegue até os detalhes do rastreamento do log de mensagens associado. Você pode agrupar os rastreamentos de log de mensagens por Limite de Atividade, Processo/Thread ou Enviar &Receber para facilitar a navegação do fluxo de mensagens.
Exibição de gráfico
Nesta visualização, os dados de rastreamento de uma determinada atividade são mostrados em forma de gráfico. O formulário de gráfico permite que você veja a execução passo a passo de eventos e as inter-relações entre várias atividades à medida que os dados se movem entre eles.
Para alternar para a exibição Grafo, selecione uma atividade na exibição Atividade e clique na guia Atividade ou em um rastreamento do log de mensagens na exibição Mensagem. Se vários arquivos de rastreamento forem carregados e a atividade envolver rastreamentos de mais de um arquivo, todos os rastreamentos relevantes aparecerão no modo de exibição de grafo. Clicar duas vezes nas atividades e nos rastreamentos do log de mensagens também leva você à exibição Grafo.
No modo de exibição do Graph , cada coluna vertical representa uma atividade e cada bloco na coluna representa um rastreamento. As atividades são agrupadas por processo (ou thread). As setas pequenas entre as atividades representam transferências. As grandes setas entre processos representam a troca de mensagens. A atividade na seleção está sempre em amarelo.
Selecionando traços no Gráfico
Clique em um bloco no grafo.
Use as teclas para cima e para baixo para selecionar seus rastreamentos vizinhos.
Observe as informações de rastreamento no Painel de Rastreamento e no Painel de Detalhes.
Expandindo ou recolhendo transferências de atividades
Você pode expandir as transferências de atividade quando a atividade selecionada for transferida para outra atividade. Ele permite que você siga as transferências.
Para expandir ou recolher transferências de atividades
Localize o rastreamento de transferência com um sinal "+" à esquerda do ícone de transferência.
Clique em "+" ou pressione Ctrl e "+" usando o teclado.
A próxima atividade aparece no grafo.
Um "-" aparece à esquerda do ícone de transferência. Clique no sinal "-" ou pressione Ctrl e "-", a transferência de atividade colapsa.
Observação
Quando uma atividade tem várias transferências para ela e você expande uma das transferências, são exibidas as atividades que conduzem desde a atividade raiz até a nova atividade. Essas novas atividades aparecem no formulário recolhido. Se você quiser ver os detalhes dessas atividades, expanda-as verticalmente clicando no ícone expandir no cabeçalho do grafo.
Expandindo ou recolhendo atividades verticalmente
O visualizador oculta detalhes desnecessários no gráfico de atividades recolhendo atividades. Em uma atividade recolhida, os rastreamentos individuais não são exibidos. Somente o rastreamento de transferências é exibido. Se você quiser exibir todos os rastreamentos em uma atividade, expanda a atividade verticalmente clicando no símbolo de expansão da atividade no cabeçalho do grafo.
Para expandir ou recolher atividades verticalmente
Clique no ícone "+" no cabeçalho da atividade para expandir a atividade verticalmente.
Observe que todos os traços são exibidos no gráfico.
Clique no ícone "-" no cabeçalho da atividade para recolhê-la verticalmente.
Observe que somente transferências importantes, registros de mensagens, avisos e exceções são mostrados na atividade.
Opções
Você pode selecionar duas opções no menu Option na visualização de gráfico.
Mostrar Rastreamentos de Limite de Atividade, que, quando desmarcada, ignora os rastreamentos de limite de atividade no gráfico.
Mostrar Rastreamentos Detalhados que Não Sejam de Mensagens, que, quando desmarcada, ignora rastreamentos de nível de detalhe, exceto para rastreamentos de mensagens. Na maioria dos casos, os rastreamentos de nível de detalhe são menos importantes para análise. Essa opção é útil quando você não quer analisar rastreamentos de nível de detalhe e quer apenas se concentrar em rastreamentos mais importantes.
Modo de Esquema
O visualizador tem dois Modos de Layout: Processo e Thread. Essa configuração define a maior unidade da organização. O modo de layout padrão é Process, o que significa que as atividades são agrupadas por processos no grafo.
Lista de execução
Você pode selecionar o processo ou thread a ser exibido no gráfico nessa lista suspensa. Por exemplo, se você tiver os arquivos de rastreamento de dois clientes (A e B) e um serviço abertos e quiser exibir apenas o serviço e o cliente A no grafo, você poderá desmarcar o cliente B na lista.
Exibindo detalhes do rastreamento
Para exibir detalhes de rastreamento, selecione um rastreamento no Painel de Rastreamento. Os detalhes são exibidos no painel Detalhes.
Painel Rastreamento
O painel superior direito no Visualizador de Rastreamento de Serviço é o painel Rastreamento. Ele lista todos os rastreamentos na atividade selecionada com informações extras, por exemplo, nível de rastreamento, ID do thread e nome do processo.
Você pode copiar o XML bruto do rastreamento para a área de transferência clicando com o botão direito do mouse em um rastreamento e selecionando Copiar Rastreamento para Área de Transferência.
Painel de detalhes
O painel inferior esquerdo no Visualizador de Rastreamento de Serviço é o Painel de Detalhes. Ele fornece três guias para exibir detalhes do rastreamento.
O modo de exibição Formatado exibe as informações de forma mais organizada. Ele lista todos os elementos XML conhecidos em tabelas e árvores, facilitando a leitura e a compreensão das informações.
A exibição XML exibe XML correspondente ao rastreamento selecionado. Ela oferece suporte a realce e sintaxe colorida. Quando você usa Localizar para pesquisar cadeias de caracteres, ele realça os resultados da pesquisa.
A exibição Mensagem exibe a parte do XML da mensagem em rastreamentos do log de mensagens. Ela fica invisível quando você seleciona um rastreamento que não seja de mensagem.
Filtrando rastros do WCF
Para facilitar a análise de rastreamentos, você pode filtrá-los da seguinte maneira:
A barra de ferramentas de filtro fornece acesso a filtros pré-definidos e personalizados. Ele pode ser habilitado por meio do menu Exibir .
O filtro predefinido do visualizador pode ser usado para filtrar seletivamente partes dos rastreamentos do WCF. Por padrão, ele é definido para permitir a passagem de todos os rastreamentos de infraestrutura. As configurações desse filtro são definidas no sub menu Opções de Filtro no menu Exibir .
Os filtros XPath personalizados dão aos usuários controle total sobre a filtragem. Eles podem ser definidos no Filtro Personalizado no menu Exibir.
Somente os rastreamentos que passam por todos os filtros são exibidos.
Usando a barra de ferramentas de filtro
A barra de ferramentas de filtro é exibida na parte superior da ferramenta. Se ele não estiver presente, você poderá ativá-lo no menu Exibir . A barra tem três componentes:
Procurar: Procurar define o assunto a ser procurado na operação de filtro. Por exemplo, se você quiser encontrar todos os rastros que foram emitidos no contexto do processo X, defina esse campo como X e o campo Pesquisar em 'Nome do Processo'. Esse campo muda para um controle seletor DateTime quando um filtro baseado em hora é selecionado.
Pesquisar em: Esse campo define o tipo de filtro a ser aplicado.
Nível: a configuração de nível define o nível mínimo de rastreamento permitido pelo filtro. Por exemplo, se o nível for definido como Erro e Acima, somente rastreamentos dos níveis Erro e Crítico serão exibidos. Esse filtro combina-se com os critérios especificados por Look For e Search In.
O botão Filtrar Agora inicia a operação de filtro. Alguns filtros, especialmente quando são aplicados a um conjunto de dados grande, levam muito tempo para serem concluídos. Você pode cancelar a operação de filtro pressionando o botão Parar que aparece na barra de status no menu Operações .
O botão Limpar redefine filtros pré-definidos e personalizados para permitir que todos os rastreamentos passem.
Opções de Filtro
O visualizador pode automaticamente remover os rastreamentos do WCF da exibição. Ele pode remover seletivamente os rastreamentos emitidos por áreas específicas do WCF, por exemplo, remover os rastreamentos relacionados a transações da exibição.
As configurações desse filtro são definidas no sub menu Opções de Filtro no menu Exibir .
Filtros personalizados
Se você estiver familiarizado com a XPath (Linguagem de Caminho XML), poderá usá-la para construir filtros personalizados para pesquisar os dados de rastreamento em busca de qualquer elemento XML de interesse. Os filtros são acessíveis por meio da barra de ferramentas de filtro.
Os filtros personalizados podem incluir parâmetros. Você também pode importar filtros personalizados pré-existentes.
Criando um filtro personalizado
Os filtros podem ser criados de duas maneiras:
Criando um filtro personalizado usando o assistente de modelo
Você pode clicar em um rastreamento existente e criar um filtro com base na estrutura do rastreamento. Este exemplo cria um filtro personalizado com base na ID do thread.
No painel de rastreamento na área superior direita do visualizador, selecione um rastreamento que inclua o elemento para o qual você deseja filtrar.
Clique no botão Criar Filtro Personalizado localizado na parte superior do painel de rastreamento.
Na caixa de diálogo exibida, insira um nome para o filtro. Neste exemplo, insira
Thread ID
. Você também pode fornecer uma descrição do filtro.A visualização em árvore à esquerda exibe a estrutura do registro de rastreo selecionado na etapa 1. Navegue até o elemento para o qual você deseja criar uma condição. Neste exemplo, navegue até o ThreadID a ser localizado no nó XPath: /E2ETraceEvent/System/Execution/@ThreadID. Clique duas vezes no atributo ThreadID no modo de exibição de árvore. Isso cria uma expressão para o atributo que está à direita da caixa de diálogo.
Altere o campo de parâmetro para a condição ThreadID de None para '{0}'. Esta etapa permite que o valor threadID seja configurado quando o filtro é aplicado. (Consulte a seção Como aplicar um filtro) Você pode definir até quatro parâmetros. As condições são combinadas usando o operador OR.
Clique em Ok para criar o filtro.
Observação
Depois que um filtro tiver sido criado usando o assistente de modelo, ele só poderá ser editado manualmente. Não é possível ativar o assistente para um filtro já criado anteriormente. Além disso, as condições de um filtro XPath criado no assistente de modelo são combinadas usando o operador OR. Se você precisar de uma operação AND, poderá editar a expressão de filtro depois que ela for criada.
Criando um filtro personalizado manualmente
O menu Filtros Personalizados permite inserir filtros XPath manualmente.
No menu Exibir, clique no item de menu Filtros Personalizados .
Na caixa de diálogo exibida, clique em Novo.
No mínimo, especifique um nome de filtro e uma expressão XPath.
Clique em OK.
Aplicando um filtro personalizado
Depois que um filtro personalizado é criado, ele é acessível por meio da barra de ferramentas de filtro. Selecione o filtro que você deseja aplicar no campo Pesquisar no campo da barra de ferramentas de filtro. Para o exemplo anterior, selecione "ID do thread".
Especifique o valor que você está procurando no campo Localizar o que . Em nosso exemplo, insira a ID do thread que você deseja pesquisar.
Clique em Filtrar Agora e observe o resultado da operação.
Se o filtro usar vários parâmetros, insira-os usando ';' como separador no campo Localizar o que . Por exemplo, a cadeia de caracteres a seguir define 3 parâmetros: '1; findValue; texto'. O visualizador aplica '1' ao {0} parâmetro do filtro. 'findValue' e 'text' são aplicados a {1} e {2}, respectivamente.
Compartilhando filtros personalizados
Filtros personalizados podem ser compartilhados entre sessões diferentes e usuários diferentes. Você pode exportar os filtros para um arquivo de definição e importar esse arquivo em outro local.
Para importar um filtro personalizado:
No menu Exibir , clique em Filtros Personalizados.
Na caixa de diálogo que é aberta, clique no botão Importar .
Navegue até o arquivo de filtro personalizado (.stvcf), clique no arquivo e clique no botão Abrir .
Para exportar um filtro personalizado:
No menu Exibir, clique em Filtros Personalizados.
Na caixa de diálogo que é aberta, selecione o filtro que você deseja exportar.
Clique no botão Exportar .
Especifique o nome e o local do arquivo de definição de filtro personalizado (.stvcf) e clique no botão Salvar .
Observação
Esses filtros personalizados só podem ser importados e exportados do Visualizador de Rastreamento de Serviço. Eles não podem ser lidos por outras ferramentas.
Localizando dados
O visualizador fornece as seguintes maneiras de encontrar dados:
A barra de ferramentas Localizar fornece um acesso rápido às opções de localização mais comuns.
A caixa de diálogo Localizar fornece mais opções de localização. Ele é acessível por meio do menu Editar ou pela tecla curta Ctrl + F.
A barra de busca aparece na parte superior do visualizador. Se ele não estiver presente, você poderá ativá-lo no menu Exibir . A barra tem dois componentes:
Localizar: permite que você insira a palavra-chave de pesquisa.
Examinar: permite que você insira o escopo da pesquisa. Você pode selecionar se deseja pesquisar em todas as atividades ou somente na atividade atual.
A caixa de diálogo Localizar fornece duas opções adicionais:
Localize o destino:
A opção "Dados de log brutos" pesquisa a palavra-chave em todos os dados brutos.
As opções "Texto XML" e "Atributo XML" pesquisam apenas em elementos XML.
A opção "Mensagem Registrada" pesquisa a palavra-chave somente em mensagens.
Ignorar atividade raiz: a pesquisa ignora os rastreamentos na atividade "000000000000". Isso melhora o desempenho em arquivos de rastreamento grandes quando a atividade raiz tem milhares de rastreamentos, a maioria dos quais são transferências.
Navegando em rastreamentos
Como os rastreamentos são registrados passo a passo durante o tempo de execução do aplicativo, navegar pelos rastreamentos pode ajudá-lo a depurar seu aplicativo. O Visualizador de Rastreamento de Serviço fornece várias maneiras de navegar em rastreamentos.
Passo para frente ou para trás
Se você considerar cada rastreamento como uma linha de código do programa, o avanço é muito semelhante à "Depuração parcial" no IDE (Ambiente de Desenvolvimento Integrado) do Visual Studio. A diferença é que você também pode retroceder nos rastreamentos. Avançar significa ir para a próxima etapa na atividade.
Passo a passo: use o menu Atividade ou pressione "F10". Você também pode usar a tecla de direção "para baixo" no painel de rastreamento.
Retrocesso: use o menu Atividade ou pressione "F9". Você também pode usar a tecla de direção "para cima" no painel de rastreamento.
Observação
Isso pode levá-lo a uma atividade que ocorre em um processo diferente ou até mesmo em um computador diferente, pois as mensagens WCF podem transportar IDs de atividade que abrangem computadores.
Seguir transferência
Os rastreamentos de transferência são rastreamentos especiais no arquivo de rastreamento. Uma atividade pode fazer a transferência para outra atividade por um rastreamento de transferência. Por exemplo, "Atividade A" pode ser transferida para "Atividade B". Nesse caso, há um rastreamento de transferência na "Atividade A" com o nome "Para: Atividade" e o ícone de transferência. Esse rastreamento de transferência é um link entre os dois rastreamentos. Na “Atividade B”, também pode haver um rastreamento de transferência no final da atividade a ser transferido de volta à “Atividade A”. Isso é semelhante às chamadas de função em programas: A chama B e B retorna.
"Seguir transferência" é semelhante à etapa "Depuração completa" em um depurador. Ele segue a transferência de A para B. Ele não tem nenhum efeito sobre outros rastreamentos.
Há duas maneiras de seguir uma transferência: por mouse ou por teclado:
Pelo mouse: clique duas vezes no rastreamento de transferência no painel de rastreamento.
Por Teclado: selecione um rastreamento de transferência e use "Seguir Transferência" no menu Atividade ou pressione "F11"
Observação
Em muitos casos, quando a Atividade A é transferida para a Atividade B, a Atividade A aguarda até que a Atividade B seja transferida de volta para a Atividade A. Isso significa que a Atividade A não tem nenhum rastreamento registrado durante o período em que a Atividade B está sendo rastreada ativamente. No entanto, também é possível que a Atividade A não aguarde e continue registrando rastreamentos. Também é possível que a Atividade B não seja transferida de volta para a Atividade A. Portanto, as transferências de atividade ainda são diferentes das chamadas de função nesse sentido. Você pode entender melhor as transferências de atividade na visão gráfica.
Ir para a Próxima ou Anterior Transferência
Ao analisar a atividade atual ou as atividades selecionadas quando várias atividades são selecionadas, talvez você queira encontrar rapidamente as atividades para as quais ela é transferida. "Passar para a próxima transferência" permite que você localize o próximo rastreamento de transferência na atividade. Depois de encontrar o rastreamento de transferência, você pode usar "Seguir transferência" para entrar na próxima atividade.
Vá para Próxima Transferência: use o menu Atividade ou pressione "Ctrl + F10".
Vá para a Transferência Anterior: use o menu Atividade ou pressione "Ctrl + F9".
Navegar na Visão de Gráfico
Embora a navegação no painel de atividade e no painel de rastreamento seja semelhante à depuração, usar a exibição Grafo oferece uma experiência de navegação muito melhor. Veja a seção "Visualização do Gráfico" para obter mais informações.
Carregando arquivos de rastreamento grandes
Arquivos de rastreamento podem ser muito grandes. Por exemplo, se você ativar o rastreamento no nível "Detalhado", o arquivo de rastreamento resultante após alguns minutos de execução poderá ser facilmente de centenas de megabytes ou até maior, dependendo da velocidade da rede e do padrão de comunicação.
Quando você abre um arquivo de rastreamento muito grande no Visualizador de Rastreamento de Serviço, o desempenho do sistema pode ser afetado negativamente. A velocidade de carregamento e o tempo de resposta após o carregamento podem ser lentos. A velocidade real difere de tempos em tempos, dependendo da configuração de hardware. Na maioria dos computadores, carregar um arquivo de rastreamento maior que 200M tem um impacto severo no desempenho. Para arquivos de rastreamento maiores que 1G, a ferramenta pode usar toda a memória disponível ou parar de responder por muito tempo.
Para evitar o tempo lento de carregamento e resposta na análise de arquivos de rastreamento grandes, o Visualizador de Rastreamento de Serviço fornece um recurso chamado "Carregamento Parcial", que carrega apenas uma pequena parte do rastreamento por vez. Por exemplo, você pode ter um arquivo de rastreamento com mais de 1 GB, em execução por vários dias no servidor. Quando ocorreram alguns erros e você deseja analisar o rastreamento, não é necessário abrir todo o arquivo de rastreamento. Em vez disso, você poderá carregar os rastreamentos dentro de um determinado período de tempo em que o erro possa ter ocorrido. Como o escopo é menor, a ferramenta Visualizador de Rastreamento de Serviço pode carregar o arquivo mais rapidamente e você pode identificar os erros usando um conjunto menor de dados.
Habilitando o carregamento parcial
Você não precisa habilitar manualmente o carregamento parcial. Se o tamanho total dos arquivos de rastreamento que você tenta carregar exceder 40 MB, o Visualizador de Rastreamento de Serviço exibirá automaticamente uma caixa de diálogo de Carregamento Parcial para selecionar a parte que deseja carregar.
Observação
Como os rastros podem não ser distribuídos uniformemente no período de tempo, o comprimento do período de tempo especificado na barra de ferramentas de Carregamento Parcial pode não ser proporcional ao tamanho do carregamento mostrado. O tamanho real do carregamento pode ser menor do que o Tamanho Estimado na caixa de diálogo de carregamento parcial.
Ajustando o carregamento parcial
Depois de carregar parcialmente o arquivo de rastreamento, talvez você queira alterar o conjunto de dados que está sendo carregado. Você pode fazer isso ajustando a barra de ferramentas de Carregamento Parcial na parte superior do visualizador.
Mova a barra de ferramentas por mouse ou insira a hora de Início e Término.
Clique no botão Ajustar .
Noções básicas sobre ícones de rastreamento
Veja a seguir uma lista de ícones que a ferramenta Visualizador de Rastreamento de Serviço usa na Exibição de Atividade, Exibição de Gráfico e painel de Rastreamento para representar diferentes itens.
Observação
Alguns rastreamentos que não são categorizados (por exemplo, "uma mensagem está fechada") não têm nenhum ícone.
Rastreamentos de atividades
Ícone | Descrição |
---|---|
![]() |
Rastreamento de aviso: um rastreamento que é emitido no nível de aviso. |
![]() |
Rastreamento de erro: um rastreamento que é emitido no nível de erro. |
![]() |
Rastreamento de início da atividade: um rastreamento que marca o início de uma atividade. Ele contém o nome da atividade. Como designer de aplicativo ou desenvolvedor, você deve definir uma atividade Iniciar rastreamento por ID de atividade por processo ou thread. Se a ID de atividade for propagada nas origens de rastreamento para a correlação de rastreamentos, você poderá consultar vários inícios para a mesma ID de atividade (um por origem de rastreamento). O rastreamento de início será emitido se ActivityTracing estiver habilitado para a origem de rastreamento. |
![]() |
Marca de Parada de Atividade: uma marca que indica o fim de uma atividade. . Ele contém o nome da atividade. Como designer ou desenvolvedor de aplicativos, você deve definir um rastreamento de interrupção de atividade por ID de atividade para cada origem de rastreamento. Nenhum rastreamento de uma determinada origem aparece após a interrupção de atividade emitida por essa origem de rastreamento, exceto se a granularidade do tempo de rastreamento não for suficientemente pequena. Quando isso acontece, dois rastreamentos com o mesmo tempo, incluindo uma interrupção, podem ser intercalados quando exibidos. Se a ID de atividade for propagada nas origens de rastreamento para a correlação de rastreamentos, você poderá consultar várias interrupções para a mesma ID de atividade (uma por origem de rastreamento). O rastreamento de interrupção será emitido se ActivityTracing estiver habilitado para a origem de rastreamento. |
![]() |
Rastreamento de Suspensão de Atividade: um rastreamento que marca o momento em que uma atividade é pausada. Nenhum rastreamento é emitido em uma atividade suspensa até que a atividade seja retomada. Uma atividade suspensa indica que nenhum processamento está acontecendo nessa atividade no escopo da fonte de rastreamento. Os rastreamentos de suspensão/retomada são úteis para a criação de perfil. O rastreamento de suspensão será emitido se ActivityTracing estiver habilitado para a origem de rastreamento. |
![]() |
Rastreamento de retomada da atividade: um rastreamento que marca o momento em que uma atividade é retomada após a suspensão. Os rastreamentos podem ser emitidos novamente nessa atividade. Os rastreamentos de suspensão/retomada são úteis para a criação de perfil. O rastreamento de retomada será emitido se ActivityTracing estiver habilitado para a origem de rastreamento. |
![]() |
Transferência: um rastreamento que é emitido quando o fluxo de controle lógico é transferido de uma atividade para outra. A atividade da qual a transferência se origina pode continuar a executar o trabalho em paralelo à atividade para a qual a transferência vai. O rastro de transferência será emitido se o ActivityTracing estiver habilitado para a origem de rastreamento. |
![]() |
Transferência de: um rastreamento que define uma transferência de outra atividade para a atividade atual. |
![]() |
Transferência para: um rastreamento que define uma transferência de fluxo de controle lógico da atividade atual para outra atividade. |
Rastreamentos do WCF
Ícone | Descrição |
---|---|
![]() |
Rastreamento de log de mensagens: um rastreamento que é emitido quando uma mensagem do WCF é registrada em log pelo recurso de log de mensagens quando a origem de rastreamento System.ServiceModel.MessageLogging está habilitada. Clicar em este rastro exibe a mensagem. Há quatro pontos de log configuráveis para uma mensagem: ServiceLevelSendRequest, TransportSend, TransportReceive e ServiceLevelReceiveRequest, que também podem ser especificados pelo messageSource atributo no rastreamento do log de mensagens. |
![]() |
Rastreamento de mensagem recebida: um rastreamento que é emitido quando uma mensagem do WCF é recebida, caso a origem de rastreamento System.ServiceModel esteja habilitada no nível Informações ou Detalhado. Esse rastreamento é essencial para exibir a seta de correlação de mensagens na exibição Gráfico da atividade. |
![]() |
Rastreamento de mensagem enviada: um rastreamento que é emitido quando uma mensagem do WCF é enviada, caso a origem de rastreamento System.ServiceModel esteja habilitada no nível Informações ou Detalhado. Esse rastreamento é essencial para exibir a seta de correlação de mensagens na exibição Gráfico da atividade. |
Atividades
Ícone | Descrição |
---|---|
![]() |
Atividade: indica que a atividade atual é uma atividade genérica. |
![]() |
Atividade raiz: indica a atividade raiz de um processo. |
Atividades do WCF
Ícone | Descrição |
---|---|
![]() |
Atividade de ambiente: uma atividade que cria, abre ou fecha um host ou cliente do WCF. Os erros que ocorreram durante essas fases serão exibidos nesta atividade. |
![]() |
Atividade de escuta: uma atividade que registra rastros relacionados a um ouvinte. Dentro dessa atividade, podemos exibir informações do ouvinte e solicitações de conexão. |
![]() |
Atividade de recepção de bytes: uma atividade que agrupa todos os rastreamentos relacionados à recepção de bytes de entrada em uma conexão entre dois pontos de extremidade. Essa atividade é essencial na correlação com atividades de transporte que propagam sua ID de atividade, como http.sys. Erros de conexão, como interrupções, aparecerão nesta atividade. |
![]() |
Atividade de Processamento de Mensagem: uma atividade que agrupa rastreamentos relacionados à criação de uma mensagem WCF. Erros devido a um envelope inválido ou uma mensagem malformada serão exibidos nessa atividade. Dentro dessa atividade, podemos inspecionar cabeçalhos de mensagem para verificar se um ID de atividade foi propagado do chamador. Se isso acontecer, ao transferirmos para a atividade de processamento de ação (o próximo ícone), poderemos também atribuir a esta atividade a ID de atividade propagada para a correlação entre os rastreamentos do chamador e do receptor. |
![]() |
Atividade de processamento de ação: uma atividade que agrupa todos os rastreamentos relacionados a uma solicitação do WCF entre dois pontos de extremidade. Se propagateActivity estiver definido como true em ambos os pontos de extremidade na configuração, todos os rastreamentos de ambos os pontos de extremidade serão mesclados em uma atividade para correlação direta. Tal atividade conterá erros devido ao processamento de segurança ou transporte, estendendo-se ao limite do código do usuário e à volta (se houver uma resposta). |
![]() |
Atividade de execução de código de usuário: uma atividade que agrupa rastreamentos de código de usuário para processar uma solicitação. |
Resolução de problemas
Se você não tiver permissão para gravar no registro, receberá a seguinte mensagem de erro "O Visualizador de Rastreamento de Serviço da Microsoft não foi registrado no sistema" quando usar o comando "svctraceviewer /register
" para registrar a ferramenta. Se isso ocorrer, você deverá fazer login usando uma conta que tenha acesso de gravação ao Registro.
Além disso, a ferramenta Visualizador de Rastreamento de Serviço grava algumas configurações (por exemplo, filtros personalizados e opções de filtro) no arquivo .settings SvcTraceViewer.exeem sua pasta de assembly. Se você não tiver permissão de leitura para o arquivo, ainda poderá iniciar a ferramenta, mas não poderá carregar as configurações.
Se você receber a mensagem de erro "Ocorreu um erro desconhecido ao processar um ou mais rastreamentos" ao abrir o arquivo .etl, isso significa que o formato do arquivo .etl é inválido.
Se você abrir um log de rastreamento criado usando um sistema operacional árabe, poderá observar que o filtro de tempo não funciona. Por exemplo, o ano 2005 corresponde ao ano 1427 no calendário árabe. No entanto, o intervalo de tempo compatível com o filtro da ferramenta Visualizador de Rastreamento de Serviço não aceita uma data anterior a 1752. Isso pode implicar que você não pode selecionar uma data correta no filtro. Para resolver esse problema, você pode criar um filtro personalizado (Exibir/Filtros Personalizados) usando uma expressão XPath para incluir um intervalo de tempo específico.