Visual Studio 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이 로컬 호스트의 프록시 설정을 무시하는 데 사용 되었기 때문에 비교적 새로운 문제입니다. 따라서 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 에 대한 투표를 추가 하십시오 .
Juliën

4
추가하기 위해 || browserlink와 같은 다른 요청을 숨기려면 'URL이 포함 된 경우 숨기기'상자에 연산자를 입력하십시오.
Nick Spicer

4
@Moriarty re: ...why Visual Studio is making these requests... 음, 프로세스가 루프백 어댑터의 HTTP를 통해 서로 통신하기 때문입니다. . 이 트래픽은 "한동안"생성되었습니다. 최근에 HTTP 프록시에 기본적으로 표시되도록 변경되었습니다 ... 그래서 왜 이것이 버그라고 생각하는지 모르겠습니다.
K. Alan Bates

2
Visual Studio 2015의 새로운 원격 디버깅 도구의 부작용은 확실합니다. 특히 Apple 디바이스의 Cordova에 대한 크로스 플랫폼 디버깅과 관련하여 더 나아가고 싶습니다. 그들은 아마도 이러한 변경 사항을 나중에 다른 플랫폼으로 확장 할 수있는 방식으로 구축했기 때문에 글로벌 변경 사항 일 수 있습니다.
Bon

1
이것은 올바른 해결책이 아닙니다. 그냥 문제를 숨 깁니다. VS에서 디버깅하는 동안 진단 도구를 제거하는 아래의 솔루션이 진정한 솔루션입니다.
Rafi

132

이러한 요청은 디버깅 할 때 실행되는 진단 도구 창에서 온 것으로 보입니다. 메모리 사용량 및 CPU 사용량에 대한 모니터링 정보를 제공하는 것처럼 보입니다.

진단 도구 대화 상자에서 메모리 / CPU 모니터링을 비활성화하여 사용 정보를 보지 않으려면 요청을 중지 할 수 있습니다.

  • 진단 도구 창을여십시오 (디버그-> Windows-> 진단 도구 표시)
  • "도구 선택"드롭 다운을 클릭하고 메모리 사용 및 CPU 사용을 선택 취소하십시오.
  • 디버깅을 중지하고 다음에 디버깅을 시작할 때 vshub에 대한 요청이 더 이상 표시되지 않습니다

10
이것이 올바른 해결책입니다. 모든 스팸 메시지를 즉시 제거했습니다. 지금은 CPU / 메모리를 신경 쓰지 않고 올바르게 사용하려면 피들러가 깨끗해야합니다. 이 수정에 대해 Alex에게 감사합니다.
Pic Mickael

6
이는 한 번만 도움이되지만 Vusial Studio에서 "진단 도구"를 비활성화 할 수 있습니다. 도구-> 옵션-> 디버깅-> 일반-> 확인란 "디버깅 중 진단 도구 활성화"
Andrey Prokhorov

1
Visual Studio 2015에서 "도구 선택"드롭 다운을 찾을 수 없습니다. 어디에 있는지 아십니까?
Per Lundberg

1
@PerLundberg "도구 선택"을 찾을 수 없으면 아래에서 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 경험을 위해 비활성화하지 않는 것이 가장 좋으며 VSHUB.exe를 활용하는 새로운 기능을 Visual Studio에 추가합니다. 시각:

시스템 트레이에서 VsHub.exe를 비활성화하려면 어떻게합니까?


@BrianOgden Phew! 감사합니다. 마지막으로 VS 2015 답변입니다. Visual Studio의 메뉴는 각 릴리스마다 크게 달라졌습니다. 갑자기이 도구 (VsHub)가 엉 키게되었고 그 이유를 모르겠습니다. Windows 10 자동 업데이트를 사용하면 몰랐을 수도 있습니다.
octopusgrabbus

디버그 세션 도중에이 작업을 수행하면 디버그 세션을 중지했다가 다시 시작할 때까지 요청이 Fiddler에서 캡처되지 않습니다.
vapcguy

21

디버깅하는 동안 Visual Studio의 진단 도구로 인해 문제가 발생합니다.

도구옵션 으로 이동 한 후 다음 단계에 따라 비활성화 할 수 있습니다 . 여기에 이미지 설명을 입력하십시오


멋진 그래픽. Brian Ogden은 이미 당신을 이겼습니다. 디버그 세션 도중에이 작업을 수행하면 디버그 세션을 중지했다가 다시 시작할 때까지 요청이 Fiddler에서 캡처되지 않습니다.
vapcguy

@vapcguy 내 대답은하지 인정 해 다른 그러나 나는 이었다 그래픽을 첫번째 글입니다. Brian은 나중에 그래픽을 포함하도록 그의 답변을 편집했습니다. 사람들이 대답을 얻는 한 괜찮습니다.
Sergey

20

이것은 vshub 트래픽을 숨기는 가장 쉬운 대안입니다.

도구> Fiddler 옵션> 연결 탭으로 http://localhost:49155이동하여 바이 패스 목록에 추가 하십시오. 해당 URL에 게시 된 모든 트래픽을 건너 뜁니다.

* 편집 : 바이 패스 목록에 추가 한 후 Fiddler를 다시 시작해야 할 수 있습니다.


2
이 변경은 Fiddler를 다시 시작한 후에 만 ​​적용되었습니다.
Bassem

@Bassem, 그것은 또한 내 다시 시작하지 않고.
Patel Pat

9

이 문제를 해결하는 가장 쉬운 방법은 피들러에서 필터를 설정하는 것입니다. OnBeforeResponse에서 vshub 호스트 / 포트가있는 경우 두 번째를 추가하십시오.

  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와 많은 시간을 보내지 않으므로이 작업을 수행하는 방법을 기억하는 데 잠시 시간이 걸렸습니다! 구체적인 지침은 다음과 같습니다.


먼저 Fiddler UI 내에서 Rules> 로 이동하십시오 Customize Rules. OnBeforeResponse기능을 검색하십시오 . 다음과 같아야합니다.

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

위의 내용은 저에게 효과적이지 않았습니다. 로컬 호스트 호스트의 모든 피들러 모니터링을 종료하는 것처럼 보였습니다.

약간의 신중한 인터넷 검색은 나에게 또 다른 해결책을 주었다-포트를 OnBeforeRequest 섹션의 맨 아래에 추가하여 포트를 차단하는 방법은 다음과 같습니다.

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

이것은 추가 로컬 호스트 트래픽을 방해하지 않고 Fiddler에서 포트 가보고되지 않도록 차단하는 것으로 보입니다.


1
여기에 대한 답변은 여러 가지 요인에 따라 위아래로 이동할 수 있으므로 "위의"라고 말하는 답변을 언급해야합니다.
Sergey

페어 포인트. 당시에는 다른 모든 솔루션에 적용되었지만 이후 추가 된 것으로 보입니다. 앞으로도 그 점을 명심하겠습니다.
Rich Howard
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.