Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
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
- A Visual Studio (lásd: [Visual Studio letöltések] (https://visualstudio.microsoft.com/downloads/?cid=learn-onpage-download-cta)) telepítve van az Azure-fejlesztési számítási feladattal (), valamint az egyéni összetevők között szereplő projekt- és elemsablonokkal a .NET-keretrendszerhez (). Lásd a részt a Visual Studiomódosításáról.
- Egy Azure-fiók. Ha nem rendelkezik Azure-fiókkal, aktiválja a Visual Studio-előfizetők számára elérhető Azure-előnyöket, vagy regisztráljon egy ingyenes próbaverziót.
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
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.
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.
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)
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.
Nyissa meg az Azure-projekt gyorsmenüjét, majd válassza a Közzététellehetőséget.
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.
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.
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.
Jelentkezzen be Azure Portalra, és keresse meg a hibakereséshez használni kívánt felhőszolgáltatást (kiterjesztett támogatást).
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.
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.
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.
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.
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.
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).
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".
Válassza a(z) Debug>Csatolás a folyamathoz (vagy nyomja le a(z) Ctrl+Alt+P).
A kapcsolattípus megőrzése Alapértelmezett.
Adja meg a kapcsolati célt az IP-cím és a port használatával:
{ipaddress}:4024
.Állítsa be a-hez, hogy automatikusan.
Jelentkezzen be ugyanazokkal a hitelesítő adatokkal, mint a távoli asztali felhasználó.
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.
Á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)
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.
Ha a .NET 4.8-at célozza, mindenképpen nyissa meg a ServiceConfiguration.Cloud.cscfg fájlt, és ellenőrizze a
osFamily
elemServiceConfiguration
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 aosFamily="7"
.Nyissa meg az Azure-projekt gyorsmenüjét, majd válassza a Közzététellehetőséget.
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.
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.
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.
Jelentkezzen be Azure Portalra, és keresse meg a hibakereséshez használni kívánt felhőszolgáltatást (kiterjesztett támogatást).
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.
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.
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.
A virtuális gép asztaláról hajtsa végre a msvsmon.exe parancsot a
Common7\IDE\Remote Debugger\x64
alatti Visual Studio telepítési mappában. Ügyeljen arra, hogy rendszergazdaként futtassa a programot.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.
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).
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".
Válassza a(z) Debug>Csatolás a folyamathoz (vagy nyomja le a(z) Ctrl+Alt+P).
A kapcsolattípus megőrzése Alapértelmezett.
Adja meg a kapcsolati célt az IP-cím és a port használatával:
{ipaddress}:4026
.Állítsa be a-hez, hogy automatikusan.
Jelentkezzen be ugyanazokkal a hitelesítő adatokkal, mint a távoli asztali felhasználó.
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.
Á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.
- 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
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
A Hibakeresésiterületen válassza a Csatolás a folyamathozlehetőséget.
Módosítsa a kapcsolattípust a Microsoft Azure App Services, majd válassza a Keresés..lehetőséget.
A megnyíló párbeszédpanelen válassza előfizetés nevét.
Jegyzet
Be kell jelentkeznie egy Microsoft-fiókba az Azure App Service-t tartalmazó előfizetéshez való hozzáféréssel.
Szűrje a nézetet erőforráscsoport vagy erőforrástípus szerint, vagy keressen név szerint.
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 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
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.
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.
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.
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.
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
A Visual Studióban hozzon létre egy új ASP.NET webalkalmazást.
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.
Jegyzet
Ha még nem jelentkezett be, a rendszer kérni fogja, hogy jelentkezzen be az Azure-fiókjába.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Kapcsolódó tartalom
Az Azure Diagnostics használatával naplózhatja a szerepkörökben futó kód részletes adatait az Azure-ban. Lásd: Naplózási adatok gyűjtése az Azure Diagnosticshasználatával.
Távoli hibakeresési forgatókönyvekhez lásd a Távoli hibakeresésrészt.