2015-10-06 8 views
6

To właśnie zaczęło się ostatnio nieoczekiwanie. Wypróbowałem wszystkie rozwiązania, które mogę znaleźć na Stack i na innych forach, ale nic nie zadziałało.Azure Debugging Environment w VS2015 awarie na starcie

Kiedy próbuję uruchomić debugowanie na roli pracownika Azure, to o ile mi się:

enter image description here

okno Debug brzmi: The program '[2208] WaIISHost.exe' has exited with code 0 (0x0).

biegnę Wizualne Studios Tryb administracyjny z poprawnym projektem ustawionym jako start-up i korzystającym z IIS Express jako serwera dev.

Próbowałem już utworzyć nową rolę roboczą Azure z tym samym projektem podstawowym, ale to nie zadziałało. Dzienniki zdarzeń systemowych nie zawierają żadnych informacji. Próbowałem ponownie zainstalować VS2015 i oddzielnie Azure SDK (v.2.7.1), bez zmian. Kiedy przeglądam emulatora obliczeniowej, zanim zniknie on mówi:

[fabric] Role Instance: deployment27(250).Web.0 
[fabric] Role state Unhealthy 
[fabric] Role state Stopped 

jestem jednak w stanie rozpocząć inne projekty roli pracownika w roztworze, co prowadzi mnie do przypuszczenia, że ​​coś musiało zdobyć uszkodzony w projekcie przywiązany do zepsuta rola pracownika jakoś. Na tym etapie nie mam pomysłów, więc każda pomoc jest bardzo doceniana.

UPDATE

Patrząc na pliku wewnątrz C:\Users\<UserAccount>\AppData\Local\dftmp\Resources\<GUID>\directory\DiagnosticStoreWallSHost.log daje mi Invalid name błąd:

WaIISHost Information: 0 : [00003568:00000001, 2015-10-06 20:02:05.472, INFO ] Attempt Deploy with RoleInstanceId=deployment27(252).Web_IN_0 RoleRoot=C:\Web\csx\Debug\roles\Web\ optional SitesDestination= 
WaIISHost Information: 0 : [00003568:00000001, 2015-10-06 20:02:08.153, ERROR] Exception:System.ServiceModel.FaultException`1[System.ServiceModel.ExceptionDetail]: Invalid name. 
Parameter name: name (Fault Detail is equal to An ExceptionDetail, likely created by IncludeExceptionDetailInFaults=true, whose value is: 
System.ArgumentException: Invalid name. 
Parameter name: name 
    at System.Security.AccessControl.NativeObjectSecurity.CreateInternal(ResourceType resourceType, Boolean isContainer, String name, SafeHandle handle, AccessControlSections includeSections, Boolean createByName, ExceptionFromErrorCode exceptionFromErrorCode, Object exceptionContext) 
    at System.Security.AccessControl.FileSystemSecurity..ctor(Boolean isContainer, String name, AccessControlSections includeSections, Boolean isDirectory) 
    at System.Security.AccessControl.DirectorySecurity..ctor(String name, AccessControlSections includeSections) 
    at System.IO.DirectoryInfo.GetAccessControl(AccessControlSections includeSections) 
    at Microsoft.WindowsAzure.ServiceRuntime.IISConfigurator.FileManager.AddAllowAceIterative(DirectoryInfo dir, FileSystemRights rights, IdentityReference[] accounts) 
    at Microsoft.WindowsAzure.ServiceRuntime.IISConfigurato...). 


WaIISHost Information: 0 : [00003568:00000001, 2015-10-06 20:02:08.157, ERROR] Exception:System.ServiceModel.FaultException`1[System.ServiceModel.ExceptionDetail]: Invalid name. 
Parameter name: name (Fault Detail is equal to An ExceptionDetail, likely created by IncludeExceptionDetailInFaults=true, whose value is: 
System.ArgumentException: Invalid name. 
Parameter name: name 
    at System.Security.AccessControl.NativeObjectSecurity.CreateInternal(ResourceType resourceType, Boolean isContainer, String name, SafeHandle handle, AccessControlSections includeSections, Boolean createByName, ExceptionFromErrorCode exceptionFromErrorCode, Object exceptionContext) 
    at System.Security.AccessControl.FileSystemSecurity..ctor(Boolean isContainer, String name, AccessControlSections includeSections, Boolean isDirectory) 
    at System.Security.AccessControl.DirectorySecurity..ctor(String name, AccessControlSections includeSections) 
    at System.IO.DirectoryInfo.GetAccessControl(AccessControlSections includeSections) 
    at Microsoft.WindowsAzure.ServiceRuntime.IISConfigurator.FileManager.AddAllowAceIterative(DirectoryInfo dir, FileSystemRights rights, IdentityReference[] accounts) 
    at Microsoft.WindowsAzure.ServiceRuntime.IISConfigurato...). 
+0

Proszę sprawdzić dzienniki zdarzeń. Możesz znaleźć informacje o zawieszaniu się roli. HTH. –

+1

Logi zdarzeń @GauravMantri nie mówią wiele. Zobacz powyżej, aby zobaczyć błąd w pliku 'WallSHost.log'. Dzięki. – GFoley83

Odpowiedz

13

Po ponownym zainstalowaniu programu Visual Studios, Azure SDK, IIS i thralling poprzez pliki dzienników, ja w końcu znalazłem problem: folder node_modules w projekcie internetowym powiązany z moją rolą pracownika.

Wkrótce po usunięciu folderu debugowanie rozpoczęło się od razu; nawet jeśli nie jest częścią rozwiązania Visual Studios.

mam od szukał tego konkretnego problemu na stosie i uznał ten wpis: https://stackoverflow.com/a/28188299/654708

Dodawanie rmdir /s /q "$(ProjectDir)node_modules\" do post-zbudować zdarzenia wewnątrz właściwości projektu związanego z rolą pracownika, usunie node_modules folder przed uruchomieniem debugera Azure. Nie jest to idealna poprawka, ale zrobi to, dopóki ten niedorzeczny problem z Windows nie będzie w stanie obsłużyć długich nazw plików.

enter image description here

UPDATE

Wystarczy znaleźć lepsze rozwiązanie. Aktualizować npm do> = 3.x za pomocą modułu npm-windows-upgrade z zespołu dev Microsoft tutaj:

https://www.npmjs.com/package/npm-windows-upgrade

W npm 3.x, moduły w folderze node_modules są przechowywane w płaskiej strukturze. Powinno to pomóc w uniknięciu limitu 256 znaków na ścieżkach, który powoduje awarię debugera Azure (pod warunkiem, że ścieżka do katalogu głównego rozwiązania nie jest już zbyt długa).

Domyślnie podczas instalacji węzła w systemie Windows, wersja npm wersja 2 jest dostarczana z pakietem wstępnym (stan na 8 września 2015 r.). Używanie zwykłego polecenia aktualizacji npmnpm -g install [email protected]<version> nie zadziała, ponieważ Węzeł zawsze będzie patrzył na wersję npm dostarczoną wraz z instalacją; gdzie jest npm-windows-upgrade.

Otwórz Windows PowerShell z uprawnieniami Administratora i uruchom następujące zadania, aby wybrać wersję npm, którą chcesz zainstalować.

  1. Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
  2. npm install -g npm-windows-upgrade
  3. npm-windows-upgrade

enter image description here

Dodatkowa lektura:

https://github.com/npm/npm/wiki/Troubleshooting#upgrading-on-windows https://github.com/npm/npm/issues/3697#issuecomment-114665926

+1

Uratowałeś mi boczek z limitem znaków, człowieku. - Chciałabym, żeby Microsoft po prostu rozwiązał problem ze ścieżką 260 znaków. To niesamowite. – BrainSlugs83

+0

dziękuję. Nie jestem pewien, jak to rozgryzłeś, ale moja głowa czuje się lepiej teraz, gdy przestałem walić nią o ścianę. – Ryan