Crash Course 101
10 moduły
5 Tygodnie

Logi

Kliknij, aby skopiować

Używanie logów do rozwiązywania problemów z aplikacją


Podczas procesu rozwoju często pojawiają się sytuacje, w których rzeczywisty wynik działania aplikacji nie pokrywa się z oczekiwanym. Nawet w przypadku prostych procesów biznesowych z niewielką liczbą bloków identyfikacja błędów może być trudna, a w przypadku dużych projektów stosowanie dodatkowych narzędzi do rozwiązywania problemów staje się obowiązkowe.

W tym module zajmiemy się debugowaniem aplikacji, czyli etapem rozwoju, na którym błędy są wykrywane, lokalizowane i eliminowane.

Najbardziej podstawowym narzędziem do wyszukiwania błędów jest wykorzystanie logu, czyli tworzenie pewnych wpisów do dalszej analizy. Przyjrzyjmy się temu na przykładzie procesu biznesowego "Basic functions", który został stworzony w czwartym module.

Celem procesu biznesowego było uzyskanie dwóch liczb, aby wykonać z nimi pewne operacje matematyczne. Załóżmy, że chcielibyśmy sprawdzić coś po drodze, a nie skupiać się tylko na końcowym wyniku (lub jego braku).

Używamy dziennika, aby się o tym upewnić:

  • Proces biznesowy naprawdę się rozpoczął
  • Blok Round otrzymuje jako wejście prawidłową wartość
  • Liczba elementów tablicy przed zakończeniem procesu biznesowego jest zgodna z naszymi oczekiwaniami (5)

Write to Log blok

Aby to zrobić, zmienimy nieco sam proces biznesowy i dodamy do niego Write to Log bloki, które, jak sama nazwa wskazuje, będą zapisywać informacje do logu.

Używamy pierwszego Write to Log na początku procesu biznesowego. Może on przyjąć jako dane wejściowe dwa parametry: Label (dla tytułu wpisu) oraz Input (sam wpis). W tym przypadku rejestrujemy sam fakt rozpoczęcia procesu biznesowego, więc nie ma potrzeby przekazywania parametrów z jakiegoś osobnego źródła. Wystarczy, że określimy tekst potwierdzenia. Dlatego jako Wejście zapiszemy tekst "Basic functions BP start".

Kolejny wpis do dziennika zostanie wykonany przed Round blokiem. I w tym przypadku zapis nie będzie już stały. Do Input trafi wartość z wynikiem dzielenia, nad którą w przyszłości trzeba wykonać operację zaokrąglania. Dobra wiadomość jest taka, że Write to Log może przyjmować wartości dowolnego typu jak Input (w tym przypadku będzie to Float), i nie ma potrzeby konwertowania na String w celu zapisu.

Na koniec trzeba zapisać liczbę elementów w tablicy. Ale żeby to zrobić, trzeba znaleźć tę ilość, bo mamy samą tablicę, a nie jej rozmiar. Dlatego oprócz. Write to Log, użyjemy bloku Array Size blok.


Logi z backendu

Po tym można opublikować aplikację, uruchomić proces biznesowy i zobaczyć wynik. Przejdź do CI/CD w zakładce Application Logs aby to zrobić.

Wpis bp_log w kolumnie Source kolumnie oznacza, że ten wpis został dokonany w wyniku Write to Log bloku. Możemy się upewnić, że proces biznesowy działa poprawnie i że logi są rzeczywiście zapisywane. Ponadto tutaj można zobaczyć różne logi systemowe, na przykład, że wynik punktu końcowego został odebrany pomyślnie (Status: 200), z jakiego adresu IP nastąpiło uruchomienie i jakie parametry zostały użyte.

Logi z frontu

Blok o tej samej nazwie (Write to Log) można zobaczyć również podczas tworzenia frontendowych procesów biznesowych. Wykorzystajmy go dla Y pole wprowadzania wartości. Zapiszmy informacje o tym, jaka wartość została wprowadzona (Input: Value = ) i w którym komponencie (Label: Y log :).

W tym przypadku blok będzie działał wyłącznie na frontendzie. Do serwera nie będą wysyłane żadne żądania, a co za tym idzie, w logach serwera nie pojawią się żadne wyniki działania tego bloku. Powstaje logiczne pytanie - gdzie zatem ich szukać?

Aby to zrobić, należy otworzyć Developer Tools w przeglądarce. Metoda uruchamiania i sama nazwa mogą się nieco różnić w zależności od tego, z jakiej przeglądarki korzystamy, ale najważniejsze jest to, że każda współczesna przeglądarka obsługuje tę funkcję, a ogólna zasada działania jest taka sama.

W naszym przykładzie Google Chrome wykorzystana zostanie przeglądarka. Aby włączyć narzędzia deweloperskie, możesz użyć odpowiedniego elementu menu w ustawieniach (More tools -> Developer tools), skrótu klawiaturowego Ctrl + Shift + I, lub po prostu naciskając F12. Dostępnych jest tu wiele różnych funkcji, takich jak przeglądanie kodu HTML strony internetowej, śledzenie żądań sieciowych i wiele innych. W tej chwili jednak interesuje nas m.in. Console sekcja. Pozwala ona śledzić wynik pracy JavaScriptu i diagnozować błędy front-endu, i to właśnie w konsoli można zobaczyć dziennik zarejestrowany przez Write to Log blok.

W polu wejściowym Y wpisaliśmy liczbę "4" i upewniliśmy się, że Write to Log zadziałało zgodnie z planem. W konsoli pojawił się wpis "Y log: Value = 4".

Was this article helpful?
Nadal szukasz odpowiedzi?