SymProxy
Magazyn symboli oparty na protokole HTTP można skonfigurować tak, aby działał jako serwer proxy między komputerami klienckimi i innymi magazynami symboli. Implementacja odbywa się za pomocą filtru Internet Server Application Programming Interface (ISAPI) o nazwie SymProxy (Symproxy.dll). Serwer SymProxy może służyć jako komputer bramy do Internetu lub innych źródeł w sieci firmowej. Na poniższym diagramie przedstawiono przykładową konfigurację SymProxy.
Funkcja SymProxy jest przydatna w wielu sytuacjach. Na przykład:
Debugujesz wiele systemów w środowisku laboratoryjnym, w którym komputery nie są dołączone do sieci firmowej, ale symbole są przechowywane w sieci i muszą być dostępne przy użyciu zintegrowanego uwierzytelniania systemu Windows (IWA).
Korporacyjne środowisko obliczeniowe zawiera zaporę, która blokuje dostęp do Internetu z komputerów, które są używane do debugowania, i należy uzyskać symbole z internetowej witryny.
Chcesz przedstawić pojedynczą ścieżkę symboli dla wszystkich użytkowników w firmie, aby nie wiedzieli ani nie dbali o to, gdzie znajdują się symbole, i możesz dodać nowe magazyny symboli bez interwencji użytkownika.
Masz zdalną lokację, która jest fizycznie daleka od pozostałych zasobów firmy, a dostęp do sieci jest powolny. Ten system może służyć do uzyskiwania symboli i buforowania ich w lokacji zdalnej.
Aby zainstalować program SymProxy, należy ręcznie skopiować pliki do właściwej lokalizacji, skonfigurować rejestr, wybrać poświadczenia zabezpieczeń sieci i skonfigurować usługi Internet Information Services (IIS). Aby upewnić się, że magazyn symboli HTTP jest prawidłowo skonfigurowany, zobacz Magazyny symboli HTTP.
Zagadnienia dotyczące wydajności wielu serwerów symboli
Każdy katalog wirtualny może być skojarzony z wieloma (nadrzędnymi) magazynami symboli. Każdy magazyn symboli jest odpytywany niezależnie. W celu uzyskania wydajności lokalne serwery SMB powinny być przetwarzane przed internetowymi serwerami HTTP. W przeciwieństwie do ścieżki symboli debugera wiele magazynów symboli HTTP można określić w ścieżce symboli SymProxy. Na katalog wirtualny jest obsługiwanych maksymalnie 10 wpisów.
Ścieżka symbolu SymProxy
Funkcja SymProxy dzieli wartość ścieżki symboli (zdefiniowanej w rejestrze) na poszczególne wpisy i używa każdego z nich, aby wygenerować ścieżkę symboli opartą na SRV* do pobrania pliku. Używa folderu katalogu wirtualnego jako magazynu podrzędnego w każdym z zapytań — w efekcie scalając nadrzędne magazyny w jednym magazynie symboli podrzędnych.
Ścieżka symbolu (wygenerowana) używana przez usługę SymProxy jest równoważna temu:
SRV*<Virtual Directory Folder>*<SymbolPath Entry #N>
W tym przykładzie ścieżka UNC i dwie ścieżki HTTP są powiązane z katalogiem wirtualnym, aby połączyć symbole z firmowego serwera symboli, Microsoftu oraz zewnętrznej firmy (Contoso). Ścieżka symboli SymProxy zostanie ustawiona następująco:
\\MainOffice\Symbols;https://msdl.microsoft.com/download/symbols;
https://symbols.contoso.com/symbols
Udział plików symboli Głównego Biura jest najpierw odpytywany za pomocą (wygenerowanej) ścieżki symboli.
SRV*D:\SymStore\Symbols*\\MainOffice\Symbols
Jeśli plik symboli nie zostanie znaleziony, nastąpi zapytanie do sklepu Microsoft Symbol Store przy użyciu wygenerowanej ścieżki symboli.
SRV*D:\SymStore\Symbols*https://msdl.microsoft.com/download/symbols
Jeśli plik nadal nie zostanie znaleziony, magazyn symboli firmy Contoso (https://symbols.contoso.com/symbols)
jest odpytywany przy użyciu (wygenerowanej) ścieżki symboli:
SRV*D:\SymStore\Symbols*https://symbols.contoso.com/symbols
Ta sekcja zawiera następujące elementy:
instalowanie SymProxy
Wybór poświadczeń zabezpieczeń sieci
Konfigurowanie serwera IIS dla SymProxy