Compartilhar via


Armazenar arquivos de símbolo adquiridos em cache

Normalmente, o SymProxy armazena em cache os arquivos adquiridos no diretório designado no IIS (Serviços de Informações da Internet) como a raiz virtual do site associado. Em seguida, o IIS disponibiliza o arquivo para o depurador do cliente. Como o depurador não pode abrir um arquivo diretamente de HTTP, ele copia o arquivo para um cache local, especificado pelo caminho do símbolo:

srv*c:\localcache*https://server/symbols

Neste exemplo, o depurador cliente copia o arquivo para c:\localcache. Em uma situação como essa, o arquivo é copiado duas vezes - uma vez por SymProxy para a raiz virtual do site e novamente pelo depurador para seu cache local.

É possível evitar a segunda operação de cópia e acelerar o processamento. Para fazer isso, primeiro você deve compartilhar a raiz virtual do site como um caminho UNC que pode ser acessado pelos depuradores. Por exemplo, esse caminho é chamado \\server\symbols. Em seguida, você deve remover a configuração do IIS para tipos MIME:

Para remover a configuração do IIS para tipos MIME

  1. Em Ferramentas Administrativas, abra o Gerenciador dos Serviços de Informações da Internet (IIS).

  2. Expanda Sites.

  3. Clique com o botão direito do mouse em Site Padrão.

  4. Clique com o botão direito do mouse no diretório virtual Símbolos e selecione Propriedades.

  5. Clique na guia Cabeçalhos HTTP .

  6. Clique em Tipos MIME .

  7. Selecione todos os tipos na caixa de listagem rotulada Tipos MIME Registrados.

  8. Clique em Remover .

  9. Para sair da caixa de diálogo Tipos MIME , clique em OK.

  10. Para sair das Propriedades dos Símbolos, clique em OK.

Isso faz com que o IIS retorne o arquivo não encontrado ao cliente de depuração para todas as transações no site. No entanto, isso não impede que o SymProxy preencha a raiz virtual com o arquivo.

Depois de remover a configuração do IIS para tipos MIME, configure os clientes do depurador para procurar símbolos primeiro no repositório HTTP e no compartilhamento que mapeia para a raiz virtual do repositório com o comando :

srv**https://server/symbols;srv*\\server\symbols

No exemplo anterior, o primeiro elemento do caminho do símbolo (srv**https://server/symbols) diz para obter arquivos do repositório HTTP e copiá-los para o repositório de símbolos padrão como um cache local. O cache especificado não tem importância porque nenhum arquivo é recebido do repositório HTTP. Após essa falha, ele tenta obter o arquivo do local real da raiz virtual do repositório (srv*\\server\symbols). Essa tentativa é bem-sucedida porque o arquivo é copiado para esse local como um efeito colateral do processamento de caminho anterior.