visual studio 2015 vshub is spamming fiddler

前端 未结 8 2067
慢半拍i
慢半拍i 2020-12-12 10:56

I have read: How do I disable VsHub.exe in the system tray? and https://connect.microsoft.com/VisualStudio/feedback/details/1919828/hundreds-of-calls-second-to-vshub-and-bro

相关标签:
8条回答
  • 2020-12-12 11:21

    The issue is caused by Visual Studio's Diagnostic Tools while debugging.

    You can disable them by going to ToolsOptions, and then following the steps:

    0 讨论(0)
  • 2020-12-12 11:23

    SpokaneDJ's answer was very helpful for me and worked great, but I don't spend a lot of time with Fiddler so it took me a minute to remember how to do this! Here are the specific instructions.


    First, within the Fiddler UI, go to Rules > Customize Rules. Search for the OnBeforeResponse function. It should look like this:

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

    Now add the following if block after the existing one (substituting your vshub host/port if different):

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

    Your OnBeforeResponse function should now look like this:

      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 讨论(0)
  • 2020-12-12 11:26

    The above didn't work for me, as such. It seemed to shut down ALL fiddler monitoring of the localhost host.

    A bit of judicious googling gave me another solution - to block the port specifically by adding this to the bottom of the OnBeforeRequest section:

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

    This seems to block the port from being reported in Fiddler, without disrupting further localhost traffic.

    0 讨论(0)
  • 2020-12-12 11:38

    This is a relatively new problem because System.NET used to ignore proxy settings for localhost, and therefore Fiddler wouldn't see the traffic by default (http://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/ConfigureDotNETApp) - see bottom section.

    Now this no longer appears to be the case, so I expect more people will have the same question. Fiddler supports several ways to filter requests, though nothing that the client can control (which is probably good, since you wouldn't want malware from excluding its traffic). The most appropriate and simplest mechanism in this case is probably to set a filter for any url that contains localhost or vshub. You can do that by:

    1. Click the filters tab (it's a top-level tab, at the same level as inspectors, statistics, etc.),
    2. Check the checkbox labeled 'Use Filters'
    3. Scroll down and find the checkbox labeled 'Hide if URL contains'.
    4. Check that box, and enter either localhost or vshub into the accompanying textbox.
    5. You should see the vshub traffic stop immediately.

    This filter will persist, so if you shutdown Fiddler and start it up again later, it will still be set.

    0 讨论(0)
  • 2020-12-12 11:38

    The easiest way to resolve this is to setup a filter in fiddler. In the OnBeforeResponse, add the second if with your vshub host/port:

      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 讨论(0)
  • 2020-12-12 11:40

    These requests seem to come from the Diagnostic Tools window which runs when debugging. Seems as though they provide the monitoring information for Memory Usage and CPU Usage.

    You can stop the requests if you don't care to see the usage information by disabling Memory/CPU monitoring in the Diagnostic Tools dialog box.

    • Open the Diagnostic Tools window (Debug -> Windows -> Show Diagnostic Tools)
    • Click the "Select Tools" drop-down and un-check Memory Usage and CPU Usage.
    • Stop debugging and next time you start debugging you should no longer see the requests being made to vshub
    0 讨论(0)
提交回复
热议问题