Udostępnij za pośrednictwem


Zdalne debugowanie aplikacji w usłudze Azure Spring Apps

Uwaga

Plany Podstawowa, Standardowa i Enterprise zostaną wycofane od połowy marca 2025 r. z 3-letnim okresem emerytalnym. Zalecamy przejście do usługi Azure Container Apps. Aby uzyskać więcej informacji, zobacz ogłoszenie o wycofaniu usługi Azure Spring Apps.

Zużycie standardowe i dedykowany plan zostaną wycofane od 30 września 2024 r. z całkowitym zamknięciem po sześciu miesiącach. Zalecamy przejście do usługi Azure Container Apps. Aby uzyskać więcej informacji, zobacz Migrowanie użycia usługi Azure Spring Apps w warstwie Standardowa i dedykowanego planu do usługi Azure Container Apps.

Ten artykuł dotyczy: ✔️ Podstawowa/Standardowa ✔️ Enterprise

Ta funkcja opisuje sposób włączania zdalnego debugowania aplikacji w usłudze Azure Spring Apps.

Wymagania wstępne

  • Interfejs wiersza polecenia platformy Azure z rozszerzeniem Azure Spring Apps. Użyj następującego polecenia, aby usunąć poprzednie wersje i zainstalować najnowsze rozszerzenie. Jeśli wcześniej zainstalowano rozszerzenie spring-cloud, odinstaluj je, aby uniknąć niezgodności konfiguracji i wersji.

    az extension remove --name spring
    az extension add --name spring
    az extension remove --name spring-cloud
    
  • Wdrożona aplikacja w usłudze Azure Spring Apps.

Włączanie lub wyłączanie debugowania zdalnego

Ze względów bezpieczeństwa usługa Azure Spring Apps domyślnie wyłącza debugowanie zdalne. Na podstawie zasad firmy możesz samodzielnie włączyć zdalne debugowanie aplikacji lub zobaczyć administratora, aby go włączyć. Możesz włączyć lub wyłączyć debugowanie zdalne przy użyciu interfejsu wiersza polecenia platformy Azure, witryny Azure Portal lub rozszerzenia programu VS Code.

Wykonaj następujące kroki, aby włączyć zdalne debugowanie aplikacji przy użyciu witryny Azure Portal:

  1. Przejdź do strony aplikacji.

  2. W obszarze Ustawienia w okienku nawigacji po lewej stronie wybierz pozycję Debugowanie zdalne.

  3. Na stronie Debugowanie zdalne włącz zdalne debugowanie i określ port debugowania.

    Zrzut ekranu witryny Azure Portal przedstawiający stronę Debugowanie zdalne z wybranymi opcjami Debugowanie zdalne i Debugowanie portów.

Przypisywanie roli platformy Azure

Aby zdalnie debugować wystąpienie aplikacji, musisz mieć przypisaną rolę Azure Spring Apps Remote Debugging Role, która obejmuje Microsoft.AppPlatform/Spring/apps/deployments/remotedebugging/action uprawnienie akcji danych.

Rolę platformy Azure można przypisać przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Wykonaj poniższe kroki, aby przypisać rolę platformy Azure przy użyciu witryny Azure Portal.

  1. Otwórz portal Azure Portal.

  2. Otwórz wystąpienie usługi Azure Spring Apps.

  3. W okienku nawigacji wybierz pozycję Kontrola dostępu (zarządzanie dostępem i tożsamościami).

  4. Na stronie Kontrola dostępu (Zarządzanie dostępem i tożsamościami) wybierz pozycję Dodaj, a następnie wybierz pozycję Dodaj przypisanie roli.

    Zrzut ekranu przedstawiający stronę Kontroli dostępu (IAM) witryny Azure Portal dla wystąpienia usługi Azure Spring Apps z wyróżnioną opcją Dodaj przypisanie roli.

  5. Na stronie Dodawanie przypisania roli na liście Nazwa wyszukaj i wybierz pozycję Rola zdalnego debugowania usługi Azure Spring Apps, a następnie wybierz pozycję Dalej.

    Zrzut ekranu witryny Azure Portal przedstawiający stronę Dodawanie przypisania roli z wyróżnioną nazwą roli debugowania zdalnego usługi Azure Spring Apps.

  6. Wybierz pozycję Członkowie, a następnie wyszukaj i wybierz swoją nazwę użytkownika.

  7. Wybierz Przejrzyj + przypisz.

Zdalne debugowanie wystąpienia aplikacji

Wystąpienie aplikacji można debugować zdalnie przy użyciu zestawu narzędzi Azure Toolkit for IntelliJ lub rozszerzenia Azure Spring Apps for VS Code.

W tej sekcji opisano sposób zdalnego debugowania wystąpienia aplikacji przy użyciu zestawu narzędzi Azure Toolkit for IntelliJ.

Wymagania wstępne

Włączanie lub wyłączanie debugowania zdalnego

Aby włączyć lub wyłączyć debugowanie zdalne, wykonaj następujące czynności:

  1. Zaloguj się do konta platformy Azure w usłudze Azure Explorer.

  2. Wybierz wystąpienie aplikacji, a następnie wybierz pozycję Włącz debugowanie zdalne.

    Zrzut ekranu przedstawiający funkcję IntelliJ z opcją menu Włącz debugowanie zdalne.

Dołączanie debugera

Aby dołączyć debuger, wykonaj następujące kroki.

  1. Wybierz wystąpienie aplikacji, a następnie wybierz pozycję Dołącz debuger. IntelliJ nawiązuje połączenie z wystąpieniem aplikacji i uruchamia zdalne debugowanie.

    Zrzut ekranu przedstawiający funkcję IntelliJ z opcją menu Dołączanie debugera.

  2. Zestaw narzędzi Azure Toolkit for IntelliJ tworzy konfigurację debugowania zdalnego. Możesz go znaleźć w obszarze Zdalne debugowanie Jvm" Konfigurowanie ścieżki klasy modułu do kodu źródłowego używanego do zdalnego debugowania.

    Zrzut ekranu narzędzia IntelliJ przedstawiający stronę Konfiguracja uruchamiania/debugowania.

Rozwiązywanie problemów

Ta sekcja zawiera informacje dotyczące rozwiązywania problemów.

  • Wykonaj następujące czynności, jeśli nie można dołączyć debugera i wystąpi błąd podobny do java.net.SocketException, connection reset lub Failed to attach to remote debugger, ClosedConnectionException:

    • Sprawdź rolę RBAC, aby upewnić się, że masz uprawnienia do zdalnego debugowania wystąpienia aplikacji.

    • Upewnij się, że nawiązujesz połączenie z prawidłowym wystąpieniem. Odśwież wdrożenie, aby pobrać najnowsze wystąpienia.

      Zrzut ekranu przedstawiający eksploratora projektu IntelliJ z opcją menu Odśwież dla węzła Wystąpienia aplikacji.

  • Jeśli pomyślnie dołączysz debuger, ale nie możesz zdalnie debugować wystąpienia aplikacji, wykonaj następujące czynności:

    • Upewnij się, że środowisko IDE zawiera kod źródłowy, który chcesz debugować.
    • Upewnij się, że konfiguracja debugowania ma poprawną ścieżkę klasy modułu.

Ograniczenia

Debugowanie zdalne jest obsługiwane tylko w przypadku aplikacji Java.

Planowanie Typ wdrożenia Obsługiwane
Plan standardowy i podstawowy Słoik Tak
Plan standardowy i podstawowy Kod źródłowy (Java) Tak
Plan standardowy i podstawowy Obraz niestandardowy Nie.
Plan przedsiębiorstwa Aplikacja Java Tak
Plan przedsiębiorstwa Kod źródłowy (Java) Tak
Plan przedsiębiorstwa Obraz niestandardowy Nie.

Wskazówki

  • Zdalne debugowanie języka Java jest niebezpieczne, ponieważ umożliwia zdalne wykonywanie kodu. Usługa Azure Spring Apps pomaga zabezpieczyć komunikację między środowiskiem IDE klienta a aplikacją zdalną. Należy jednak wyłączyć zdalne debugowanie i usunąć rolę RBAC po zakończeniu.
  • Należy skalować w wystąpieniu aplikacji do jednego, aby upewnić się, że ruch może przejść do wystąpienia.

Następne kroki