SymProxy

クライアントコンピューターと他のシンボルストア間のプロキシとして機能するように、HTTP ベースのシンボルストアを構成できます。 の実装は、SymProxy (Symproxy.dll) と呼ばれるインターネットサーバーアプリケーションプログラミングインターフェイス (ISAPI) フィルターを介して行われます。 SymProxy サーバーは、インターネットまたは社内ネットワーク内の他のソースへのゲートウェイコンピューターとして使用できます。 次の図は、SymProxy 構成の例を示しています。

symproxy 構成の例の図

SymProxy は、さまざまな状況で役立ちます。 次に例を示します。

  • コンピューターが企業ネットワークに接続されていないラボ環境内では、多くのシステムをデバッグしていますが、シンボルはネットワークに格納されており、統合 Windows 認証 (iwa) を使用してアクセスする必要があります。

  • 企業のコンピューティング環境には、デバッグ中のコンピューターからインターネットにアクセスできないようにするファイアウォールが含まれており、インターネット Web サイトからシンボルを取得する必要があります。

  • 社内のすべてのユーザーに対して1つのシンボルパスを提示して、シンボルがどこにあるかを把握したり注意したりする必要がなく、ユーザーの介入なしに新しいシンボルストアを追加することができます。

  • リモートサイトが企業リソースの他の部分から物理的に離れており、ネットワークアクセスが遅い。 このシステムを使用して、シンボルを取得し、リモートサイトにキャッシュすることができます。

symproxy をインストールするには、ファイルを正しい場所に手動でコピーし、レジストリを構成し、ネットワークセキュリティ資格情報を選択して、インターネットインフォメーションサービス (IIS) を構成する必要があります。 HTTP シンボルストアが正しく構成されていることを確認するには、「 Http シンボルストア」を参照してください。

複数のシンボルサーバーのパフォーマンスに関する考慮事項

各仮想ディレクトリは、複数の (アップストリーム) シンボルストアに関連付けることができます。 各シンボルストアは個別に照会されます。 パフォーマンスを向上させるには、インターネット HTTP サーバーの前にローカルの SMB サーバーを処理する必要があります。 デバッガーのシンボルパスとは異なり、SymProxy シンボルパスでは複数の HTTP シンボルストアを指定できます。 1つの仮想ディレクトリにつき最大10個のエントリがサポートされています。

SymProxy シンボルパス

SymProxy は、(レジストリに定義されている) シンボルパスの値を個々のエントリに分割し、各エントリを使用して SRV * ベースのシンボルパスを生成し、ファイルを取得します。 仮想ディレクトリのフォルダーは各クエリの下流ストアとして使用されます。つまり、アップストリームストアを1つのダウンストリームシンボルストアにマージします。

SymProxy によって使用される (生成される) シンボルパスは、次のように相当します。

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

この例では、UNC パスと2つの HTTP パスを仮想ディレクトリに関連付けて、企業のシンボルサーバー、Microsoft、およびサードパーティ (Contoso) のシンボルをマージします。 SymProxy シンボルパスは次のように設定されます。

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

メインの Office シンボルファイル共有は、(生成された) シンボルパスを使用して最初に照会されます。

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

シンボルファイルが見つからない場合、Microsoft シンボルストアは次の (生成された) シンボルパスを使用してクエリが実行されます。

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

ファイルがまだ見つからない場合、Contoso シンボルストア (https://symbols.contoso.com/symbols) は (生成された) シンボルパスを使用してクエリが実行されます。

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

ここでは、以下の内容について説明します。

SymProxy のインストール

レジストリの構成

ネットワーク セキュリティ資格情報の選択

SymProxy 用の IIS の構成

除外一覧の設定

使用できないシンボル ストアの処理

ファイル ポインターの処理

取得したシンボル ファイルのキャッシュ