Udostępnij przez


Debugowanie notatników

Na tej stronie opisano sposób korzystania z wbudowanego interaktywnego debugera w notesie usługi Databricks. Debuger jest dostępny tylko dla języka Python.

Interaktywny debuger udostępnia punkty przerwania, wykonywanie krok po kroku, inspekcję zmiennych i inne narzędzia ułatwiające wydajniejsze tworzenie kodu w notesach.

Wymagania

Aby uzyskać dostęp do debugera, notes musi być połączony z jednym z następujących zasobów obliczeniowych:

  • Bezserwerowe usługi obliczeniowe
  • Środowisko obliczeniowe z trybem dostępuustawionym na standard (wcześniej udostępnione) w środowisku Databricks Runtime 14.3 LTS lub nowszym
  • Obliczenia z trybem dostępu ustawionym na Dedykowane (wcześniej znane jako tryb pojedynczego użytkownika) w Databricks Runtime 13.3 LTS lub nowszym
  • Obliczenia z trybem dostępu ustawionym na Bez izolacji udostępnionej w Databricks Runtime 13.3 LTS lub nowszym.

Włączanie debugera

Aby włączyć debuger, wykonaj następujące czynności:

  1. Kliknij swoją nazwę użytkownika w prawym górnym rogu obszaru roboczego i wybierz pozycję Ustawienia z listy rozwijanej.
  2. Na pasku bocznym Ustawienia wybierz pozycję Deweloper.
  3. W sekcji Ustawienia edytora przełącz interaktywny debuger Pythona dla notesów.

Rozpocznij debugowanie

Aby uruchomić debuger, wykonaj następujące kroki:

  1. Dodaj jeden lub więcej punktów przerwania, klikając w marginesie komórki. Aby usunąć punkt przerwania, kliknij go ponownie.

    tworzenie i usuwanie punktów przerwania wideo

  2. Uruchom sesję debugowania przy użyciu jednej z następujących opcji:

    • Kliknij pozycję Uruchom > komórkę debugowania.
    • Użyj skrótu klawiaturowego Opcja + Shift + D.
    • Z menu uruchamiania komórki wybierz pozycję Debuguj komórkę.

    debugowanie elementu komórki w menu uruchamiania komórki

Sesja debugowania jest uruchamiana automatycznie i uruchamia wybraną komórkę.

Możesz również uruchomić debuger, jeśli komórka generuje błąd. W dolnej części danych wyjściowych komórki kliknij przycisk Debug.

Gdy sesja debugowania jest aktywna, w górnej części komórki zostanie wyświetlony pasek narzędzi Debug toolbar.

Akcje debugowania

pasek narzędzi debugera z adnotacjami

W sesji debugowania można wykonać następujące czynności:

  • Ustaw lub usuń punkty przerwania.
  • Wyświetlanie wartości zmiennych w punkcie przerwania.
  • Przechodź krok po kroku przez kod.
  • Wejdź do funkcji lub wyjdź z niej.
  • Zlokalizuj wiersz, na którym debuger jest zatrzymany.

Gdy kod osiągnie punkt przerwania, zatrzymuje się przed uruchomieniem wiersza, a nie po nim.

Użyj przycisków na pasku narzędzi debugera, aby przejść przez kod. Podczas przechodzenia przez kod bieżący wiersz jest wyróżniony w komórce. Wartości zmiennych można wyświetlić w okienku Eksploratora zmiennych na prawym pasku bocznym.

Po przejściu przez funkcję lokalne zmienne funkcji są wyświetlane w okienku zmiennej oznaczone jako [local].

Wejdź do plików obszaru roboczego

Możesz ustawić punkty przerwania i przejść do funkcji zdefiniowanych w innych plikach obszaru roboczego, gdy włączysz karty dla notesów i plików. Aby przejść do funkcji, kliknij ikonę Strzałka w dół z kropką.. Jeśli funkcja jest zdefiniowana w innym pliku obszaru roboczego, debuger otworzy ten plik na nowej karcie.

przykładowy krok w

Uwaga

  • Debuger może przechodzić tylko do funkcji zdefiniowanych w plikach w obszarze roboczym. Przechodzenie do bibliotek języka Python lub innych notesów nie jest jeszcze obsługiwane.
  • W przypadku edytowania plików zewnętrznych po ich zaimportowaniu sesja notesu może nadal używać starej wersji modułu. Aby upewnić się, że edycje importowanych modułów zostaną zastosowane podczas debugowania, użyj automatycznego ładowania modułów języka Python w środowisku Databricks Runtime 18.0 lub nowszym lub bezserwerowym środowisku obliczeniowym w wersji 4 lub nowszej.

Konsola debugowania

Po rozpoczęciu sesji debugowania konsola debugowania zostanie automatycznie wyświetlona w dolnym panelu. Ta konsola umożliwia wykonywanie kodu w języku Python w celu inspekcji zmiennych lub ich manipulowania po zatrzymaniu na punkcie przerwania. Kod wykonywany w notesie głównym nie jest uruchamiany podczas sesji debugowania. Aby uruchomić kod w konsoli programu , naciśnij Enter. W przypadku wyrażeń wielowierszowych użyj Shift + Enter , aby przejść do nowego wiersza.

debug_console

Uwaga

  • Konsola debugowania jest przeznaczona do szybkiej oceny i przerywa działanie, jeśli wykonanie kodu przekroczy 15 sekund.
  • Polecenie display nie jest obsługiwane w konsoli debugowania. Aby wyświetlić przykładowe dane z ramki danych, użyj df.show() dla ramek danych PySpark lub df.head() dla ramek danych Pandas.

Eksplorator zmiennych

Możesz użyć panelu ikona eksploratora zmiennych eksploratora zmiennych po prawej stronie, aby wyświetlić wartości zmiennych. Kliknięcie Inspekcja automatycznie uruchamia kod w konsoli debuggera, aby wyświetlić wartość zmiennej.

przykładowy panel eksploratora zmiennych

Aby filtrować wyświetlanie, wprowadź tekst w polu wyszukiwania. Lista jest filtrowana automatycznie podczas wpisywania.

W przypadku języka Python w środowisku Databricks Runtime 12.2 LTS lub nowszym zmienne są aktualizowane w miarę uruchamiania komórki. W przypadku języków Scala, R i Python w środowisku Databricks Runtime 11.3 LTS i nowszych zmienne są aktualizowane po zakończeniu działania komórki.

Kończenie sesji debugera

Aby zakończyć sesję debugowania, kliknij przycisk zatrzymania debugera w lewym górnym rogu komórki lub kliknij przycisk zatrzymywania notesu w górnej części notesu. Sesja debugowania również automatycznie kończy się po 30 minutach, jeśli użytkownik nie korzysta z paska narzędzi debugowania ani konsoli debugowania.

Debugowanie za pomocą asystenta usługi Databricks

Asystent usługi Databricks to asystent sztucznej inteligencji obsługujący kontekst, który może ułatwić debugowanie kodu. Aby uzyskać więcej informacji, zobacz skróty poleceń asystenta dla notatników.

Ograniczenia

Aby uzyskać więcej informacji, zobacz Znane ograniczenia dotyczące notesów Databricks.