Partilhar via


SymProxy

Você pode configurar seu armazenamento de símbolos baseado em HTTP para atuar como um proxy entre computadores cliente e outros repositórios de símbolos. A implementação é feita através de um filtro ISAPI (Internet Server Application Programming Interface) chamado SymProxy (Symproxy.dll). O servidor SymProxy pode ser usado como um computador gateway para a Internet ou outras fontes dentro da rede da sua empresa. O diagrama a seguir mostra um exemplo de configuração do SymProxy.

Diagrama mostrando um exemplo de configuração do SymProxy.

SymProxy é útil em muitas situações. Por exemplo:

  • Você está depurando muitos sistemas dentro de um ambiente de laboratório no qual os computadores não estão conectados à rede da empresa, mas os símbolos são armazenados na rede e devem ser acessados usando a Autenticação Integrada do Windows (IWA).

  • O seu ambiente de TI corporativo inclui um firewall que impede o acesso à Internet dos computadores em fase de depuração, e tem de obter símbolos de um site online.

  • Você deseja apresentar um único caminho de símbolo para todos os usuários em sua empresa, para que eles não precisem saber ou se preocupar com onde os símbolos estão localizados, e você pode adicionar novos repositórios de símbolos sem a intervenção do usuário.

  • Você tem um site remoto que está fisicamente longe do resto dos recursos da sua empresa e o acesso à rede é lento. Este sistema pode ser usado para adquirir símbolos e armazená-los em cache no local remoto.

Para instalar o SymProxy, você deve copiar manualmente os arquivos para o local correto, configurar o registro, escolher credenciais de segurança de rede e configurar o IIS (Serviços de Informações da Internet). Para garantir que seu armazenamento de símbolos HTTP esteja configurado corretamente, consulte Repositórios de símbolos HTTP.

Considerações sobre o desempenho do servidor de vários símbolos

Cada Diretório Virtual pode ser associado a vários repositórios de símbolos (upstream). Cada repositório de símbolos é consultado de forma independente. Para desempenho, os servidores SMB locais devem ser processados antes dos servidores HTTP da Internet. Ao contrário de um caminho de símbolo do depurador, múltiplos armazenamentos de símbolos via HTTP podem ser especificados num caminho de símbolo SymProxy. Um máximo de 10 entradas são suportadas por Diretório Virtual.

Caminho do símbolo SymProxy

O SymProxy divide o valor do caminho do símbolo (definido pelo registro) nas entradas individuais e usa cada entrada para gerar um caminho de símbolo baseado em SRV* para recuperar o arquivo. Ele usa a pasta da Diretoria Virtual como o repositório downstream em cada uma das consultas - na verdade, agregando os repositórios upstream num único repositório de símbolos downstream.

O caminho do símbolo (gerado) usado pelo SymProxy é equivalente a isto:

SRV*<Virtual Directory Folder>*<SymbolPath Entry #N>

Neste exemplo, um caminho UNC e dois caminhos HTTP são associados a um diretório virtual para mesclar os símbolos de um servidor de símbolos corporativo, a Microsoft e uma 3ª parte (Contoso). O SymProxy SymbolPath seria definido assim:

\\MainOffice\Symbols;https://msdl.microsoft.com/download/symbols;
https://symbols.contoso.com/symbols

O compartilhamento de arquivos Símbolo do Escritório Principal é consultado primeiro usando um caminho de símbolo (gerado) de:

SRV*D:\SymStore\Symbols*\\MainOffice\Symbols

Se o arquivo de símbolo não for encontrado, o Microsoft Symbol Store será consultado usando um caminho de símbolo (gerado) de:

SRV*D:\SymStore\Symbols*https://msdl.microsoft.com/download/symbols

Se o ficheiro ainda não for encontrado, a unidade (https://symbols.contoso.com/symbols) do Repositório de Símbolos da Contoso será consultada usando um caminho de símbolo gerado automaticamente:

SRV*D:\SymStore\Symbols*https://symbols.contoso.com/symbols

Esta secção inclui:

Instalação do SymProxy

Configuração do Registro

Escolhendo credenciais de segurança de rede

Configurando o IIS para SymProxy

Configurando listas de exclusão

Lidando com Repositórios de Símbolos Indisponíveis

Manipulando ponteiros de arquivo

Armazenamento em Cache de Arquivos de Símbolos Adquiridos