Megosztás a következőn keresztül:


Azure Cloud Services (kiterjesztett támogatási) szolgáltatás hibakeresése a Visual Studióban

A Visual Studio különböző lehetőségeket kínál az Azure Cloud Services (kiterjesztett támogatás) és a virtuális gépek hibakeresésére.

Előfeltételek

Felhőszolgáltatás hibakeresése a helyi számítógépen

Időt és pénzt takaríthat meg az Azure Compute Emulator használatával a felhőszolgáltatás helyi gépen történő hibakereséséhez. A szolgáltatás helyi hibakeresésével az üzembe helyezés előtt anélkül javíthatja a megbízhatóságot és a teljesítményt, hogy nem kell fizetnie a számítási időért. Bizonyos hibák azonban csak akkor fordulhatnak elő, ha egy felhőszolgáltatást az Azure-ban futtat. Ezeket a hibákat akkor lehet hibakereséssel elhárítani, ha engedélyezi a távoli hibakeresést a szolgáltatás közzétételekor, majd csatolja a hibakeresőt egy szerepkörpéldányhoz.

Az emulátor szimulálja az Azure Compute szolgáltatást, és a helyi környezetben fut, így üzembe helyezés előtt tesztelheti és hibakeresést végezhet a felhőszolgáltatásban. Az emulátor kezeli a szerepkörpéldányok életciklusát, és hozzáférést biztosít a szimulált erőforrásokhoz, például a helyi tároláshoz. Amikor a Visual Studio-ban hibakeresi vagy futtatja a szolgáltatást, az automatikusan elindítja az emulátort a háttérben futó alkalmazásként, majd telepíti a szolgáltatást az emulátorra. Az emulátor használatával megtekintheti a szolgáltatást, amikor a helyi környezetben fut. Az emulátor teljes vagy expressz verzióját futtathatja. Lásd: Az Emulator Express használata felhőszolgáltatás helyi futtatásához és hibakereséséhez.

A felhőszolgáltatás hibakeresése a helyi számítógépen

  1. A menüsávon válassza Hibakeresés>Hibakeresés indítása az Azure Cloud Services (kiterjesztett támogatás) projekt futtatásához. Másik lehetőségként nyomja le az F5 billentyűt. Ekkor megjelenik egy üzenet, amely szerint a Compute Emulator elindul. Az emulátor indításakor a rendszertálca ikonja megerősíti.

    Azure Emulator a rendszertálcában

  2. A számítási emulátor felhasználói felületének megjelenítéséhez nyissa meg az Azure ikon helyi menüjét az értesítési területen, majd válassza a Compute Emulator felhasználói felületének megjelenítéselehetőséget.

    A felhasználói felület bal oldali paneljén láthatók a számítási emulátorban jelenleg üzembe helyezett szolgáltatások és az egyes szolgáltatások által futtatott szerepkörpéldányok. A jobb oldali panelen kiválaszthatja a szolgáltatást vagy szerepköröket az életciklus, a naplózás és a diagnosztikai adatok megjelenítéséhez. Ha a fókuszt egy beillesztett ablak felső margójára helyezi, a jobb oldali ablaktáblát kitölti.

  3. Az alkalmazás lépéseit a Hibakeresés menü parancsainak kiválasztásával és a kód töréspontjainak beállításával végezheti el. Amikor végiglép az alkalmazáson a hibakeresőben, a panelek frissülnek az alkalmazás aktuális állapotával. Ha leállítja a hibakeresést, az alkalmazás telepítése törlődik. Ha az alkalmazás tartalmaz egy webes szerepkört, és beállította az Indítási művelet tulajdonságot a webböngésző indítására, a Visual Studio elindítja a webalkalmazást a böngészőben. Ha módosítja egy szerepkör példányainak számát a szolgáltatáskonfigurációban, le kell állítania a felhőszolgáltatást, majd újra kell indítania a hibakeresést, hogy hibakeresést végezhet a szerepkör új példányai között.

    Jegyzet

    Ha leállítja a szolgáltatás futtatását vagy hibakeresését, a helyi számítási emulátor és a táremulátor nem áll le. Kifejezetten le kell állítania őket az értesítési területről.

Felhőszolgáltatás hibakeresése az Azure-ban

Ha az ebben a szakaszban ismertetett eljárással engedélyezi egy felhőszolgáltatás távoli hibakeresését, az nem mutat csökkentett teljesítményt, és nem jár további költségekkel. Éles szolgáltatásban ne használjon távoli hibakeresést, mert a szolgáltatást használó ügyfeleket hátrányosan érintheti.

Távoli hibakeresés engedélyezése felhőszolgáltatáshoz (kiterjesztett támogatás)

  1. Adjon hozzá egy végpontot a ServiceDefinition.csdef az alapértelmezett msvsmon porthoz. A Visual Studio 2019 esetében ez 4024.

    <Endpoints>
       <InputEndpoint name="RemoteDebug" protocol="tcp" port="4024" localPort="4024" />
    </Endpoints>
    

    Jegyzet

    A Visual Studio különböző verziói különböző portokkal rendelkeznek a távoli hibakereső port-hozzárendelései.

  2. Nyissa meg az Azure-projekt gyorsmenüjét, majd válassza a Közzététellehetőséget.

  3. Válassza ki a Átmeneti környezetet és a Hibakeresési konfigurációt.

    Ez csak egy útmutató. Úgy is dönthet, hogy tesztkörnyezetét egy termelési környezetben futtatja. A felhasználókat azonban hátrányosan érintheti, ha engedélyezi a távoli hibakeresést az élesített környezetben. Kiválaszthatja a kiadási konfigurációt, de a hibakeresési konfiguráció megkönnyíti a hibakeresést.

    Válassza ki a hibakeresési konfigurációt.

  4. Kövesse a Cloud Services (kiterjesztett támogatás)című cikkben ismertetett szokásos lépéseket, de jelölje be a Távoli asztal engedélyezése az összes szerepkörhöz jelölőnégyzetet.

    A rendszer kérni fogja, hogy hozzon létre egy felhasználónevet és jelszót a távoli asztali felhasználó számára, amelyet később be kell jelentkeznie a virtuális gépre.

  5. Lépjen a következő képernyőre, tekintse át a beállításokat, és ha elkészült, kattintson Közzététel elemre, és várja meg, amíg az üzembe helyezés befejeződik.

  6. Jelentkezzen be Azure Portalra, és keresse meg a hibakereséshez használni kívánt felhőszolgáltatást (kiterjesztett támogatást).

  7. Válassza a Szerepkörök és Példányok opciót a bal oldali panelen, majd válassza ki azt a szerepkört, amelyet távolról szeretne hibakeresni.

  8. Kattintson Csatlakozás elemre a jobb oldali szerepkörpéldányban előugró ablakban, majd a Csatlakozás gombra kattintva letölthet egy távoli asztali fájlt, amely lehetővé teszi a virtuális gépre való bejelentkezést. Jelentkezzen be az előző lépésben a távoli asztal engedélyezésekor létrehozott hitelesítő adatokkal.

    Képernyőkép a szerepkörpéldány előugró ablakról a Csatlakozás beállítással.

  9. A távoli Azure-beli virtuális gépen telepítse a Visual Studio 2019 Távoli eszközöket az Távoli hibakeresésicímű cikkben leírtak szerint.

  10. A virtuális gép asztaláról hajtsa végre a D:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\Remote Debugger\x64\msvsmon.exeparancsot. Ügyeljen arra, hogy rendszergazdaként futtassa a programot.

  11. Fogadja el a tűzfalon keresztüli hozzáférés engedélyezésére vonatkozó utasításokat. Ekkor megjelenik egy üzenet, amely jelzi, hogy msvsmon.exe elkezdte figyelni a kapcsolatokat.

  12. Az Azure Portalon nyissa meg az erőforráscsoportot, és kérje le a felhőszolgáltatás nyilvános IP-címét (kiterjesztett támogatás).

    Képernyőkép arról, hogy hol található a felhőszolgáltatás nyilvános IP-címe.

A hibakereső csatlakoztatása egy felhőszolgáltatáshoz (kiterjesztett támogatás) az Azure-ban

Jegyzet

Amikor csak lehetséges, hibakeresést kell végeznie a Közzétételi folyamatban kiválasztott konfiguráció hibakeresésével, de ha hibakeresést végez egy Kiadási konfigurációban, akkor a Visual Studióban használja a Ctrl+Q billentyűkombinációt a "Just My Code" kifejezés kereséséhez, és törölje a jelet A Csak saját kód engedélyezése Eszközök>Beállítások>Hibakereső>Általános. A kiadási buildek optimalizálva vannak, ezért nem tekinthetők "Saját kódnak".

  1. Válassza a(z) Debug>Csatolás a folyamathoz (vagy nyomja le a(z) Ctrl+Alt+P).

  2. A kapcsolattípus megőrzése Alapértelmezett.

  3. Adja meg a kapcsolati célt az IP-cím és a port használatával: {ipaddress}:4024.

  4. Állítsa be a-hez, hogy automatikusan.

  5. Jelentkezzen be ugyanazokkal a hitelesítő adatokkal, mint a távoli asztali felhasználó.

  6. Válassza a Összes felhasználó folyamatainak megjelenítése. Ha egy feldolgozói szerepkört keres, csatolja a WaWorkerHost.exe; ha webes szerepkört keres, csatolja a w3wp.exe folyamathoz; webes API-szerepkör esetén ez WaIISHost.exe.

  7. Állítson be töréspontokat (lépjen a sorra, és nyomja le F9), nyissa meg a webhely nyilvános URL-címét, és reprodukálja a helyzetet a hibakeresés céljából.

Távoli hibakeresés engedélyezése felhőszolgáltatáshoz (kiterjesztett támogatás)

  1. Adjon hozzá egy végpontot a ServiceDefinition.csdef az alapértelmezett msvsmon porthoz. A Visual Studio 2022 esetében ez 4026; A Visual Studio 2019 esetében ez 4024.

    <Endpoints>
       <InputEndpoint name="RemoteDebug" protocol="tcp" port="4026" localPort="4026" />
    </Endpoints>
    

    Jegyzet

    A Visual Studio különböző verziói különböző portokkal rendelkeznek a távoli hibakereső port-hozzárendelései.

  2. Ha a .NET 4.8-at célozza, mindenképpen nyissa meg a ServiceConfiguration.Cloud.cscfg fájlt, és ellenőrizze a osFamily elem ServiceConfiguration attribútumának értékét a Cloud Services közzétételekor (kiterjesztett támogatás). .NET 4.8-projekt esetén használja a osFamily="7".

  3. Nyissa meg az Azure-projekt gyorsmenüjét, majd válassza a Közzététellehetőséget.

  4. Válassza ki a Átmeneti környezetet és a Hibakeresési konfigurációt.

    Ez csak egy útmutató. Úgy is dönthet, hogy tesztkörnyezetét egy termelési környezetben futtatja. A felhasználókat azonban hátrányosan érintheti, ha engedélyezi a távoli hibakeresést az élesített környezetben. Kiválaszthatja a kiadási konfigurációt, de a hibakeresési konfiguráció megkönnyíti a hibakeresést.

    Válassza ki a hibakeresési konfigurációs

  5. Kövesse a Cloud Services (kiterjesztett támogatás)című cikkben ismertetett szokásos lépéseket, de jelölje be a Távoli asztal engedélyezése az összes szerepkörhöz jelölőnégyzetet.

    A rendszer kérni fogja, hogy hozzon létre egy felhasználónevet és jelszót a távoli asztali felhasználó számára, amelyet később be kell jelentkeznie a virtuális gépre.

  6. Lépjen a következő képernyőre, tekintse át a beállításokat, és ha elkészült, kattintson Közzététel elemre, és várja meg, amíg az üzembe helyezés befejeződik.

  7. Jelentkezzen be Azure Portalra, és keresse meg a hibakereséshez használni kívánt felhőszolgáltatást (kiterjesztett támogatást).

  8. Válassza a Szerepkörök és Példányok opciót a bal oldali panelen, majd válassza ki azt a szerepkört, amelyet távolról szeretne hibakeresni.

  9. Kattintson Csatlakozás elemre a jobb oldali szerepkörpéldányban előugró ablakban, majd a Csatlakozás gombra kattintva letölthet egy távoli asztali fájlt, amely lehetővé teszi a virtuális gépre való bejelentkezést. Jelentkezzen be az előző lépésben a távoli asztal engedélyezésekor létrehozott hitelesítő adatokkal.

    Képernyőkép a szerepkörpéldány előugró ablakról a Csatlakozás beállítással.

  10. A távoli Azure-beli virtuális gépen telepítse a Visual Studio 2022 Távoli eszközöket az Távoli hibakeresésicímű cikkben leírtak szerint.

  11. A virtuális gép asztaláról hajtsa végre a msvsmon.exe parancsot a Common7\IDE\Remote Debugger\x64alatti Visual Studio telepítési mappában. Ügyeljen arra, hogy rendszergazdaként futtassa a programot.

  12. Fogadja el a tűzfalon keresztüli hozzáférés engedélyezésére vonatkozó utasításokat. Ekkor megjelenik egy üzenet, amely jelzi, hogy msvsmon.exe elkezdte figyelni a kapcsolatokat.

    Képernyőkép arról, hogy msvsmon.exe figyeli a kapcsolatokat.

  13. Az Azure Portalon nyissa meg az erőforráscsoportot, és kérje le a felhőszolgáltatás nyilvános IP-címét (kiterjesztett támogatás).

    Képernyőkép arról, hogy hol található a felhőszolgáltatás nyilvános IP-címe.

A hibakereső csatlakoztatása egy felhőszolgáltatáshoz (kiterjesztett támogatás) az Azure-ban

Jegyzet

Amikor csak lehetséges, hibakeresést kell végeznie a Közzétételi folyamatban kiválasztott konfiguráció hibakeresésével, de ha hibakeresést végez egy Kiadási konfigurációban, akkor a Visual Studióban használja a Ctrl+Q billentyűkombinációt a "Just My Code" kifejezés kereséséhez, és törölje a jelet A Csak saját kód engedélyezése Eszközök>Beállítások>Hibakereső>Általános. A kiadási buildek optimalizálva vannak, ezért nem tekinthetők "Saját kódnak".

  1. Válassza a(z) Debug>Csatolás a folyamathoz (vagy nyomja le a(z) Ctrl+Alt+P).

  2. A kapcsolattípus megőrzése Alapértelmezett.

  3. Adja meg a kapcsolati célt az IP-cím és a port használatával: {ipaddress}:4026.

  4. Állítsa be a-hez, hogy automatikusan.

  5. Jelentkezzen be ugyanazokkal a hitelesítő adatokkal, mint a távoli asztali felhasználó.

  6. Válassza a Összes felhasználó folyamatainak megjelenítése. Ha egy feldolgozói szerepkört keres, csatolja a WaWorkerHost.exe; ha webes szerepkört keres, csatolja a w3wp.exe folyamathoz; webes API-szerepkör esetén ez WaIISHost.exe.

  7. Állítson be töréspontokat (lépjen a sorra, és nyomja le F9), nyissa meg a webhely nyilvános URL-címét, és reprodukálja a helyzetet a hibakeresés céljából.

A távoli hibakeresés korlátozásai az Azure-ban

A távoli hibakeresésre a következő korlátozások vonatkoznak:

  • Ha engedélyezve van a távoli hibakeresés, nem tehet közzé olyan felhőszolgáltatást, amelyben egy szerepkör 25-nél több példánysal rendelkezik.

  • A hibakereső a 30400–30424,31400–31424 és 32400–32424 portot használja. Ha ezen portok bármelyikét megpróbálja használni, nem fogja tudni közzétenni a szolgáltatást, és az alábbi hibaüzenetek egyike megjelenik az Azure tevékenységnaplójában:

    • Hiba történt a .cscfg fájlnak a .csdef fájlon való érvényesítésekor. A szerepkör "szerepkör" végpontjának Microsoft.WindowsAzure.PlugIns.RemoteDebugger.Connector fenntartott porttartománya átfedésben van egy már definiált porttal vagy tartománnyal.
    • Az erőforrás-kiosztás sikertelen volt. Később próbálkozzon újra, próbálja meg csökkenteni a virtuális gép méretét vagy a szerepkörpéldányok számát, vagy próbálkozzon az üzembe helyezéssel egy másik régióban.

Az Azure App Service hibakeresése

Az Azure App Service-ben futó programok hibakereséséhez használja a Visual Studióban a Csatolás a folyamathoz párbeszédpanelt.

Jegyzet

Ez csak a Visual Studio 2022 17.1-től kezdődő Azure App Service-hez érhető el.

Windows Azure App Service hibakeresése

  1. A Hibakeresésiterületen válassza a Csatolás a folyamathozlehetőséget.

  2. Módosítsa a kapcsolattípust a Microsoft Azure App Services, majd válassza a Keresés..lehetőséget.

  3. A megnyíló párbeszédpanelen válassza előfizetés nevét.

    Az Azure App Service kiválasztása párbeszédpanel képernyőképe, amelyen a kiválasztandó appszolgáltatások listája látható.

    Jegyzet

    Be kell jelentkeznie egy Microsoft-fiókba az Azure App Service-t tartalmazó előfizetéshez való hozzáféréssel.

  4. Szűrje a nézetet erőforráscsoport vagy erőforrástípus szerint, vagy keressen név szerint.

  5. Ezután válassza ki a hibakereséshez használni kívánt App Service-t, majd válassza az Oklehetőséget.

    Ez lehetővé teszi a távoli hibakeresést az App Service-ben, és megjeleníti a csatolandó elérhető folyamatok listáját.

    A Folyamat csatolása ablak képernyőképe, amelyen a kiválasztott App Service-en futó folyamatok láthatók.

  6. A hibakeresés megkezdéséhez válassza ki a csatolni kívánt folyamatot, majd válassza a Csatolás lehetőséget.

Azure-beli virtuális gépek hibakeresése

Az Azure-beli virtuális gépeken futó programok hibakeresését a Visual Studióban a Server Explorer használatával végezheti el. Ha engedélyezi a távoli hibakeresést egy Azure-beli virtuális gépen, az Azure telepíti a távoli hibakeresési bővítményt a virtuális gépen. Ezután csatolhat folyamatokat a virtuális gépen, és a szokásos módon hibakeresést végezhet.

Jegyzet

Az Azure Resource Manager-veremen keresztül létrehozott virtuális gépeket távolról lehet hibakeresésre használni a Visual Studio 2019 Cloud Explorer használatával. További információ: Azure-erőforrások kezelése a Cloud Explorer.

Azure-beli virtuális gép hibakeresése

  1. A Kiszolgálókezelőben bontsa ki a Virtuális gépek csomópontot, és válassza ki a hibakereséshez használni kívánt virtuális gép csomópontját.

  2. Nyissa meg a helyi menüt, és válassza a Hibakeresés engedélyezéselehetőséget. Amikor a rendszer megkérdezi, hogy biztos-e abban, hogy engedélyezni szeretné-e a hibakeresést a virtuális gépen, válassza az Igenlehetőséget.

    Az Azure telepíti a távoli hibakeresési bővítményt a virtuális gépre a hibakeresés engedélyezéséhez.

    virtuális gép engedélyezze a hibakeresési parancsot

    Azure-tevékenységnapló

  3. Miután a távoli hibakeresési bővítmény telepítése befejeződött, nyissa meg a virtuális gép helyi menüjét, és válassza Hibakereső csatolása...

    Az Azure lekéri a virtuális gép folyamatainak listáját, és megjeleníti őket a Csatolás a folyamathoz párbeszédpanelen.

    Parancs a hibakereső csatolására

  4. A Csatolás a folyamathoz párbeszédpanelen válassza a kijelölése lehetőséget, hogy a találatok listájában csak a hibakereséshez használni kívánt kódtípusok jelenjenek meg. Hibakereséssel 32 bites vagy 64 bites felügyelt kódot, natív kódot vagy mindkettőt is hibakereséssel végezhet.

    Kódtípus kiválasztása párbeszédpanel

  5. Válassza ki a virtuális gépen hibakereséshez használni kívánt folyamatokat, majd válassza a Csatoláslehetőséget. Választhatja például a w3wp.exe folyamatot, ha webalkalmazást szeretne hibakeresésre a virtuális gépen. További információt Egy vagy több folyamat hibakeresése a Visual Studio és Azure Szerepkörarchitektúra című cikkben talál.

Webes projekt és virtuális gép létrehozása hibakereséshez

Az Azure-projekt közzététele előtt hasznos lehet tesztelni egy olyan zárt környezetben, amely támogatja a hibakeresési és tesztelési forgatókönyveket, és ahol telepíthet tesztelési és monitorozási programokat. Az ilyen tesztek futtatásának egyik módja az alkalmazás távoli hibakeresése egy virtuális gépen.

A Visual Studio ASP.NET-projektek egy praktikus virtuális gépet hozhatnak létre, amelyet alkalmazásteszteléshez használhat. A virtuális gép olyan gyakran szükséges végpontokat tartalmaz, mint a PowerShell, a Távoli asztal és a WebDeploy.

Webes projekt és virtuális gép létrehozása hibakereséshez

  1. A Visual Studióban hozzon létre egy új ASP.NET webalkalmazást.

  2. Az Új ASP.NET Projekt párbeszédpanel Azure-szakaszában válassza Virtuális gép lehetőséget a legördülő listában. Hagyja bejelölve a Távoli erőforrások létrehozása jelölőnégyzetet. A folytatáshoz válassza OK lehetőséget.

    Megjelenik a Virtuális gép létrehozása az Azure párbeszédpanelen.

    ASP.NET webes projekt létrehozása párbeszédpanel

    Jegyzet

    Ha még nem jelentkezett be, a rendszer kérni fogja, hogy jelentkezzen be az Azure-fiókjába.

  3. Válassza ki a virtuális gép különböző beállításait, majd válassza OKlehetőséget. További információt virtuális gépek című témakörben talál.

    A DNS-névhez megadott név a virtuális gép neve lesz.

    Virtuális gép létrehozása az Azure-ban párbeszédpanelen

    Az Azure létrehozza a virtuális gépet, majd üzembe helyezi és konfigurálja a végpontokat, például a Távoli asztalt és a Webes üzembe helyezést.

  4. A virtuális gép teljes konfigurálása után válassza ki a virtuális gép csomópontját a Kiszolgálókezelőben.

  5. Nyissa meg a helyi menüt, és válassza a Hibakeresés engedélyezéselehetőséget. Amikor a rendszer megkérdezi, hogy biztos-e abban, hogy engedélyezni szeretné-e a hibakeresést a virtuális gépen, válassza az Igenlehetőséget.

    Az Azure telepíti a távoli hibakeresési bővítményt a virtuális gépre a hibakeresés engedélyezéséhez.

    virtuális gép engedélyezze a hibakeresési parancsot

    Azure-tevékenységnapló

  6. Tegye közzé a projektjét az Útmutató: Webes projekt üzembe helyezése modul használatával a Visual Studio One-Click Közzétételrészében leírtak szerint. Mivel hibakeresést szeretne végezni a virtuális gépen, a Webes közzététel varázsló Beállítások lapján válassza a Hibakeresési lehetőséget konfigurációként. Ez biztosítja, hogy a hibakeresés során elérhetőek legyenek a kódszimbólumok.

    Közzétételi beállítások

  7. A Fájl közzétételi beállításaiterületen válassza a További fájlok eltávolítása a célhelyen, ha a projekt már korábban üzembe lett helyezve.

  8. A projekt közzététele után a virtuális gép helyi menüjében válassza Hibakereső csatolása...

    Az Azure lekéri a virtuális gép folyamatainak listáját, és megjeleníti őket a Csatolás a folyamathoz párbeszédpanelen.

    Parancs a hibakereső csatolására

  9. A Csatolás a folyamathoz párbeszédpanelen válassza a kijelölése lehetőséget, hogy a találatok listájában csak a hibakereséshez használni kívánt kódtípusok jelenjenek meg. Hibakereséssel 32 bites vagy 64 bites felügyelt kódot, natív kódot vagy mindkettőt is hibakereséssel végezhet.

    Kódtípus kiválasztása párbeszédpanel

  10. Válassza ki a virtuális gépen hibakereséshez használni kívánt folyamatokat, majd válassza a Csatoláslehetőséget. Választhatja például a w3wp.exe folyamatot, ha webalkalmazást szeretne hibakeresésre a virtuális gépen. További információt Egy vagy több folyamat hibakeresése a Visual Studio-ban című témakörben talál.