ビジュアルスタジオ2015 vshubがフィドラーをスパムしている


201

私は読んだ: システムトレイのVsHub.exeを無効にするにはどうすればよいですか? および https://connect.microsoft.com/VisualStudio/feedback/details/1919828/hundreds-of-calls-second-to-vshub-and-browserlink-is-off

vshubを無効にしない方がいいです。私はフィドラーを使用しているときはもっと静かにしたいだけです。現在、それは他のすべてをスパムし、一般的なデバッグを行うことはできません。

誰かが回避策を知っていますか?locahostの残りをブロックせずにvshubがフィドラーに表示されないようにできますか?

回答:


268

これは比較的新しい問題です。これは、System.NETがlocalhostのプロキシ設定を無視していたため、デフォルトではFiddlerがトラフィックを認識しないためです(http://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/ConfigureDotNETApp)。 -下のセクションを参照してください。

今はそうではないように思われるので、もっと多くの人が同じ質問を持つことになると思います。Fiddlerはリクエストをフィルタリングするいくつかの方法をサポートしていますが、クライアントが制御できるものは何もありません(マルウェアがトラフィックを除外しないようにするため、これはおそらく良い方法です)。この場合の最も適切で最も単純なメカニズムは、おそらくlocalhostまたはvshubを含むURLにフィルターを設定することです。あなたはそれを行うことができます:

  1. フィルタータブをクリックします(これは最上位のタブで、インスペクターや統計などと同じレベルです)。
  2. 「フィルターを使用する」というチェックボックスをチェックします
  3. 下にスクロールして、[URLが含まれている場合は非表示にする]チェックボックスを見つけます。
  4. そのボックスをチェックして、付随するテキストボックスにlocalhostまたはvshubを入力します。
  5. vshubトラフィックがすぐに停止するはずです。

このフィルターは存続するため、Fiddlerをシャットダウンして後で再起動しても、設定されたままになります。


4
ありがとう、@ Anson。これらの大量のリクエストを非表示にすると、Fiddlerが再び使用できるようになります。しかし、もちろんこれは依然として深刻な問題のままです。また Visual Studioまたはその後の関連するプロセスがこれらの要求を最初に(反省的)作成している理由も不思議に思われます。これにも不便な場合は、MS Connectのバグ#1919828またはASP.NET MVCの問題#3655に投票してください。
ジュリアン

4
追加するだけで|| ブラウザリンクなどの他のリクエストを非表示にする場合は、[URLに次を含む]ボックスの演算子を使用します。
Nick Spicer 2016年

4
@Moriarty re: ...why Visual Studio is making these requests...まあ、これはプロセスがループバックアダプターのHTTPを介して互いに通信しているためです。。このトラフィックは「しばらく」の間生成されています。最近変更されて、デフォルトでHTTPプロキシに表示されるようになっているので、なぜこれをバグと見なすのかよくわかりません。
K.

2
これは、Visual Studio 2015の新しいリモートデバッグツールの副作用です。特にAppleデバイス上のCordovaのクロスプラットフォームデバッグに関連して、さらに賭けます。彼らはおそらく、後で他のプラットフォームに拡張できるようにこれらの変更を構築しました。
Bon

1
これは正しい解決策ではありません。問題を隠すだけです。VSでのデバッグ中に診断ツールを削除する以下のソリューションは、真のソリューションです。
Rafi

132

これらのリクエストは、デバッグ時に実行される診断ツールウィンドウから送信されたようです。メモリ使用量とCPU使用量の監視情報を提供するかのようです。

[診断ツール]ダイアログボックスでメモリ/ CPU監視を無効にすることで、使用状況の情報を表示したくない場合は、要求を停止できます。

  • Diagnostic Toolsウィンドウを開きます(Debug-> Windows-> Show Diagnostic Tools)。
  • [ツールの選択]ドロップダウンをクリックし、メモリ使用量とCPU使用量のチェックを外します。
  • デバッグを停止すると、次回デバッグを開始すると、vshubに対して行われたリクエストが表示されなくなります。

10
それが正しい解決策です。それはすぐにすべてのスパムメッセージを取り除きました。現在、CPU /メモリは気にしていません。適切に使用できるように、バイオリンをきれいに保つ必要があります。アレックス、この修正をありがとう。
Pic Mickael

6
これは1度だけ役立ちますが、Vusial Studioで「診断ツール」を無効にできます:ツール->オプション->デバッグ->全般->チェックボックス「デバッグ中に診断ツールを有効にする」
Andrey Prokhorov

1
[ツールの選択]ドロップダウン(Visual Studio 2015)が見つからないようです。それがどこにあるかについての考えは?
Lundbergによる2016

1
@PerLundberg「Select Tools」が見つからない場合は、以下のBrianの回答を試してください(これらのコメントでのAndreyの回答と同じです)。これは、メモリ/ CPU監視を常に無効にしておくための私の推奨ソリューションです。必要な場合は、有効にする方法を知っています。
Alex

デバッグセッションで、Alexのオプションを実行した場合、メモリ/ CPUの監視は停止しますが、デバッグセッションを停止して再開するまでリクエストは停止しません。これを難しい方法で見つけました。
vapcguy

88

私にとって、Fiddlerフィルターの代わりにFiddler4への「スパム」を停止するための修正は、Visual Studio 2015オプションを変更することでした。

Visual Studio 2015->ツール->オプション->デバッグ->一般->「デバッグ中に診断ツールを有効にする」のチェックを外す/無効にする

ここに画像の説明を入力してください

VSHUB.exeサービスは、デバッグ中に診断ツールを支援し、デバッグしているウェブサイト/ webapi / webアプリに継続的にpingするサービスである必要があります。デバッグは必要ありません。現時点では診断ツールなので、Visual Studioでそれを無効にしました

VSHUB.exeを無効にすることに関しては、Microsoftの誰かから読むまで、無効にしないことでVisual Studio 2015のエクスペリエンスを向上させ、VSHOB.exeを利用する新しい機能をVisual Studioに追加することをお勧めします。時間:

システムトレイでVsHub.exeを無効にするにはどうすればよいですか?


@BrianOgden Phew!ありがとうございました。最後に、VS 2015の回答。Visual Studioのメニューは、リリースごとに大きく変更されています。突然、このツール-VsHub-が不安定になり、なぜかわかりません。Windows 10の自動更新を使用すれば、私の知らないうちにそうなったかもしれません。
タコグラブバス2017

この方法で行う場合は注意してください。デバッグセッションの途中でこれを行うと、デバッグセッションを停止して再開するまで、リクエストはFiddlerでキャプチャされなくなります。
vapcguy

21

この問題は、デバッグ中のVisual Studioの診断ツールが原因で発生します。

[ ツール] ➜[ オプション]に移動し、次の手順に従って、これらを無効にできます。 ここに画像の説明を入力してください


素敵なグラフィック。しかし、ブライアン・オグデンはすでにあなたを倒しました-重複した答え。この方法で行う場合は注意してください。デバッグセッションの途中でこれを行うと、デバッグセッションを停止して再開するまで、リクエストはFiddlerでキャプチャされなくなります。
vapcguy

@vapcguy私は私の答えが違うことを認めなければならないが、私グラフィックを投稿した最初でした。ブライアンは後で彼の回答を編集してグラフィックを含めました。しかし、人々が答えを得る限り、それは問題ありません。
セルゲイ

20

これは、vshubトラフィックを非表示にする簡単な方法です。

[ツール]> [フィドラーオプション]> [接続]タブに移動http://localhost:49155し、バイパスリストに追加します。これにより、そのURLに投稿されたすべてのトラフィックがスキップされます。

*編集:バイパスリストに追加した後、Fiddlerを再起動する必要がある場合があります。


2
この変更は、Fiddlerを再起動した後にのみ適用されました。
Bassem

@Bassem、それも私のために再起動することなく。
Smit Patel、2016

9

これを解決する最も簡単な方法は、フィドラーでフィルターを設定することです。OnBeforeResponseで、vshubホスト/ポートを使用する場合は2番目を追加します。

  static function OnBeforeResponse(oSession: Session) {
    if (m_Hide304s && oSession.responseCode == 304) {
        oSession["ui-hide"] = "true";
    }

    if (oSession.HostnameIs("localhost:49155")){
        oSession["ui-hide"] = "hiding vshub"; // String value not important
    }


    }

2

SpokaneDJの回答は私にとって非常に役に立ち、うまくいきましたが、私はFiddlerにあまり時間をかけないので、これを行う方法を覚えるのに1分かかりました!具体的な手順は次のとおりです。


最初に、Fiddler UI内でRules> に移動しますCustomize RulesOnBeforeResponse関数を検索します。次のようになります。

static function OnBeforeResponse(oSession: Session) {
  if (m_Hide304s && oSession.responseCode == 304) {
    oSession["ui-hide"] = "true";
  }
}

次に、既存のブロックの後に次の ifブロックを追加します(vshubホスト/ポートを異なる場合は置き換えます)。

    if (oSession.HostnameIs("localhost:49155")){
      oSession["ui-hide"] = "hiding vshub"; // String value not important
    }

あなたのOnBeforeResponse関数は次のようになります。

  static function OnBeforeResponse(oSession: Session) {
    if (m_Hide304s && oSession.responseCode == 304) {
        oSession["ui-hide"] = "true";
    }

    if (oSession.HostnameIs("localhost:49155")){
        oSession["ui-hide"] = "hiding vshub"; // String value not important
    }
  }

0

上記は、私にとってはうまくいきませんでした。localhostホストのすべてのフィドラーモニタリングがシャットダウンされたようです。

少し賢明なグーグルで私に別の解決策を与えました-OnBeforeRequestセクションの一番下にこれを追加することによって特にポートをブロックすること:

if (oSession.host=="localhost:49155"){
    oSession["ui-hide"] = "true";
}

これにより、ローカルホストのトラフィックを中断することなく、ポートがFiddlerで報告されないようにブロックされているようです。


1
ここでの回答は複数の要因に基づいて上下にシフトする可能性があるため、「上記」としてどの回答を参照しているのかを述べる必要があります。
セルゲイ

フェアポイント。当時は他のすべてのソリューションに適用されていましたが、それ以降追加されているようです。将来はそのことを頭に入れておきます。
リッチハワード
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.