Cenário 2: exemplo de analisador usando o rastreamento ETW
Para gerar um relatório de rastreamento ETW para o componente da API do servidor HTTP, execute as etapas conforme mostrado na seção "Gerando um relatório de rastreamento ETW" do Cenário 1: Exemplo de tempo limite HTTP usando comandos de rastreamento etw e netsh, mas reproduza o erro específico para esse cenário. Neste exemplo, acesse o aplicativo Web de um computador cliente, resultando na mensagem "400 solicitação incorreta" sendo mostrada no cliente. Essas etapas são executadas no servidor, pois ele está hospedando o aplicativo Web.
Exibindo o rastreamento e o diagnóstico
O arquivo CSV resultante para rastreamentos pode ser exibido no Excel ou em qualquer ferramenta que dê suporte ao formato CSV. A Tabela 2 abaixo mostra trechos de um arquivo de rastreamento de exemplo (httptrace.csv). No relatório de rastreamento, a coluna "Level" mostra uma entrada com um valor de "2", que representa um erro. Conforme observado acima, o componente da API do servidor HTTP segue os níveis de ETW definidos no artigo Tipo Complexo tipo complexo LevelType.
Os níveis de ETW incluem: 1 Crítico; 2 Erro; 3 Aviso; 4 Informativo; 5 Detalhado.
Com esse erro, o tipo de evento (coluna Tipo) relata "ParseRequestFailed". Nas colunas subsequentes do evento ParseRequestFailed, vemos uma entrada "InvalidHost". Essa entrada significa que o host identificado na Solicitação HTTP está incorreto, de acordo com o protocolo HTTP. Observe que a coluna com a entrada "InvalidHost" não está incluída na tabela para fins de brevidade e para evitar o trecho de colunas não contíguas.
Para corrigir esse problema de análise, o cliente Web deve ser corrigido para estar em conformidade com o HTTP RFC.
Nome do evento | Type | ID do evento | Versão | Canal | Nível |
---|---|---|---|---|---|
EventTrace | Cabeçalho | 0 | 2 | 0 | 0 |
Microsoft-Windows-HttpService | Addurl | 31 | 0 | 16 | 4 |
Microsoft-Windows-HttpService | ConnConnect | 21 | 0 | 16 | 4 |
Microsoft-Windows-HttpService | ConnIdAssgn | 22 | 0 | 16 | 4 |
Microsoft-Windows-HttpService | RecvReq | 1 | 0 | 16 | 4 |
Microsoft-Windows-HttpService | ParseRequestFailed | 52 | 0 | 16 | 2 |
Microsoft-Windows-HttpService | LogFileWrite | 51 | 0 | 16 | 4 |
Tabela 2: Trechos de um relatório de rastreamento de exemplo para um problema de análise