← Wszystkie wpisy

Okna na froncie

Przebudowana Output Console: 6 zakładek, bez DevTools

Otwieranie DevTools tylko po to, żeby przeczytać log, to przełączanie kontekstu, które wykonujesz sto razy dziennie, nawet o tym nie myśląc. Przebudowana Output Console całkowicie usuwa to przełączanie: przeglądarka logów tylko do odczytu, która żyje wewnątrz strony, z sześcioma zakładkami obejmującymi wyjście konsoli, ruch sieciowy, nieobsłużone błędy oraz dataLayer z GTM. Bez F12. Bez wymówek o zablokowanej maszynie. Oto pełne omówienie.

Czym właściwie jest Output Console

Output Console to jedno z okien deweloperskich JustZix działających w karcie — „pane" renderowany bezpośrednio w DOM strony przez rozszerzenie. Jest tylko do odczytu: nie wpisujesz w nią niczego. W przeciwieństwie do JS Console (REPL, w którym uruchamiasz kod), logi trafiają do Output Console same z siebie. Otwierasz ją, a ona się zapełnia.

Są dwa sposoby na jej otwarcie:

To okno jak każde inne w JustZix: przeciągasz je, zmieniasz rozmiar, odsuwasz na bok. Nie blokuje strony pod spodem.

Dlaczego okno logów w karcie bije DevTools

DevTools jest świetne. Nie zawsze jest jednak dostępne i nie zawsze wygodne. Konkretne powody, dla których konsola w karcie wygrywa:

To nie jest zamiennik DevTools do głębokiej pracy. To właściwe narzędzie, gdy chcesz zobaczyć, co robi strona, bez ceregieli.

Sześć zakładek, każda z licznikiem na żywo

Okno podzielone jest na sześć zakładek. Każda zakładka ma plakietkę pokazującą, ile wpisów aktualnie zawiera, aktualizowaną na żywo w trakcie działania strony:

ZakładkaCo pokazuje
AllWszystkie wpisy ze wszystkich źródeł, w kolejności chronologicznej.
JZconsoleTylko wyjście z Twojego własnego loggera window.JUSTZIX.*.
ConsoleTylko standardowe console.log/info/warn/error/debug strony.
NetworkŻądania sieciowe strony, przechwytywane przez chrome.webRequest.
ErrorsNieobsłużone wyjątki i nieobsłużone odrzucenia promise, każdy rozwijalny.
DataLayerPushe do window.dataLayer (GTM) plus podgląd obiektu na żywo.

Podział na JZconsole i Console jest celowy. Twoje własne logi debugowania nie powinny tonąć w szumie strony, a szum strony nie powinien zagłuszać Twoich logów. Trzymaj je osobno albo czytaj połączone w zakładce All.

Kontekstowy pasek filtrów

Między zakładkami a polem wyszukiwania znajduje się pasek filtrów, który zmienia się w zależności od tego, która zakładka jest aktywna. Nie ma jednego globalnego filtra — każdy rodzaj danych dostaje kontrolki, które mają dla niego sens:

Ponieważ pasek jest kontekstowy, nigdy nie przewijasz obok nieistotnych kontrolek. Zakładka Console nie pokazuje Ci filtra domeny; zakładka Network nie pokazuje Ci pól wyboru poziomów logów.

Pole wyszukiwania

Poniżej paska filtrów, zawsze widoczne, znajduje się pole wyszukiwania. To działający na żywo, niewrażliwy na wielkość liter filtr podciągów nad wpisami w aktywnej zakładce. Wpisz checkout, a lista zawęża się w trakcie pisania. Naciśnij Esc, aby natychmiast je wyczyścić.

Wyszukiwanie i filtry kontekstowe się sumują. W zakładce Network możesz odznaczyć wszystko poza statusem 4xx/5xx, a następnie wpisać fragment ścieżki w polu wyszukiwania, aby namierzyć jeden niedziałający endpoint.

Rozwijalne logi konsoli

Wywołania console.* z prawdziwego świata logują obiekty, tablice, duże ładunki danych. Wyrzucone surowo, dwadzieścia takich wpisów czyni zakładkę nieczytelną. Dlatego wpisy console.*domyślnie zwinięte — każdy pokazuje krótką linię podglądu, coś w stylu:

[Checkout][14:22:07] EVENT: {…}

Kliknij linię, a rozwinie się w pełne drzewo JSON każdego argumentu, w stylu DevTools — wgłębiaj się w zagnieżdżone obiekty, rozwijaj tablice, czytaj cały ładunek. Zwiń je ponownie, gdy skończysz. Otrzymujesz przejrzystą listę i pełne szczegóły na żądanie, a nie jedno albo drugie.

Zakładka Errors

Zakładka Errors zbiera to, co rzeczywiście się zepsuło: nieobsłużone wyjątki i nieobsłużone odrzucenia promise. Każdy wpis rozwija się, pokazując ślad stosu i szczegóły, więc możesz przejść od „coś zawiodło" do „ta linia w tym pliku" bez opuszczania strony.

Jedno uczciwe zastrzeżenie warte podkreślenia od razu: nieudany fetch lub XHR — API zwracające 404 albo 500 — nie jest wyjątkiem JavaScript. Nie pojawi się w zakładce Errors. Dla takich przypadków przechodzisz do zakładki Network i filtrujesz po statusie 4xx/5xx. Zakładka Errors dotyczy kodu, który rzucił wyjątek, a nie żądań, które zawiodły.

Zakładka DataLayer

Jeśli strona korzysta z Google Tag Manager, zakładka DataLayer to najszybszy sposób, by zobaczyć, co GTM otrzymuje. Okno dzieli się na dwie kolumny:

Widzisz jednocześnie zdarzenia w momencie ich wywołania i zakumulowany stan — bez zgadywania, czy push dotarł, bez otwierania rozszerzenia do debugowania tagów.

Logger window.JUSTZIX

Output Console to nie tylko pasywna przeglądarka — dostarcza API do logowania dla Twojego własnego kodu. Cokolwiek napiszesz w panelu JS, w akcji reguły albo w kodzie strony, może logować się prosto do zakładki JZconsole:

JUSTZIX.log('cart loaded', cart);
JUSTZIX.info('user is logged in');
JUSTZIX.warn('coupon field empty');
JUSTZIX.error('checkout API failed', err);
JUSTZIX.debug('raw payload', payload);

Pięć metod odpowiada pięciu poziomom kontrolowanym przez pola wyboru filtra JZconsole. Aliasy zapewniają wygodę i bezpieczeństwo:

Ponieważ Twoje logi trafiają do własnej zakładki, pozostają czytelne niezależnie od tego, jak gadatliwa jest natywna console strony.

Praktyczna pierwsza sesja

  1. Naciśnij Ctrl+Alt+K na stronie, którą chcesz zbadać — Output Console otworzy się jako okno TEMP.
  2. Zacznij od zakładki All, aby się rozejrzeć, a potem przejdź do zakładki, która ma znaczenie.
  3. Debugujesz własną regułę? Rozsyp wywołania JUSTZIX.log(...) i obserwuj JZconsole.
  4. Strona się dziwnie zachowuje? Sprawdź Errors pod kątem rzuconych wyjątków, Network pod kątem nieudanych żądań.
  5. Audytujesz analitykę? Otwórz DataLayer i wyzwól ścieżkę użytkownika.
  6. Zawęź cokolwiek polami wyboru poziomów i polem wyszukiwania; Esc czyści wyszukiwanie.

Zobacz też

Przebudowana Output Console zmienia „otwórz DevTools i kop" w „zerknij na zakładkę obok strony". Pobierz JustZix — jest darmowy, działa na Chrome 100+ i instaluje się w jakieś dwie minuty.

Oceń ten wpis

Brak ocen — oceń jako pierwszy.

Wypróbuj samodzielnie

Zainstaluj JustZix i wklej dowolny snippet z tego artykułu. Dwie minuty od zera do działającej reguły na wszystkich Twoich urządzeniach.

Pobierz JustZix

Funkcje · Jak to działa · Przykłady · Zastosowania