Wtyczka Monitor zapytań

Opublikowany: 2021-02-19

Za każdym razem, gdy ładuje się witryna WordPress, za kulisami dzieje się wiele rzeczy, ponieważ informacje są pobierane z bazy danych, a strona jest budowana, a następnie ładowana. Ponieważ te zapytania pobierają informacje z bazy danych i mogą dotyczyć każdego motywu, wtyczki i podstawowego pliku, jest to niezwykle przydatne, jeśli można je w jakiś sposób monitorować. Przywitaj się z wtyczką Query Monitor.

Wtyczka Query Monitor jest jednym z najpopularniejszych narzędzi do (zgadłeś) monitorowania zapytań WordPress. Dzięki dedykowanemu zespołowi zapewniającemu doskonałe wsparcie i regularne aktualizacje, wtyczka Query Monitor zapewnia nieocenioną pomoc programistom internetowym podczas debugowania witryn.

Przyjrzyjmy się bliżej wtyczce Query Monitor i zobaczmy, jak można jej użyć.

Przedstawiamy wtyczkę Query Monitor

Query Monitor to bezpłatne narzędzie do debugowania WordPress. Podobnie jak w przypadku wszystkich wtyczek WordPress, możesz zainstalować Query Monitor z obszaru administracyjnego wtyczki.

Po zainstalowaniu i aktywacji wtyczki na każdej odwiedzanej stronie (zarówno w widokach frontendu, jak i backendu) pojawi się grupa liczb, które szczegółowo opisują statystyki ładowania bieżącej strony. Te 4 liczby pokazują czas generowania strony, użycie pamięci PHP, czas zapytań do bazy danych i liczbę wykonanych zapytań.

Jeśli najedziesz na te liczby, pojawi się menu rozwijane zawierające łącza do dodatkowych danych.

Po kliknięciu dowolnego z tych łączy na dole strony pojawia się okno z menu paska bocznego, które jest identyczne z menu przedstawionym powyżej, którego można użyć do filtrowania wyników. Poniższy zrzut ekranu przedstawia niektóre wyniki dla opcji „Hooks & Actions”:

Ostatnia zakładka w menu nosi nazwę „Warunki” i nie jest taka sama dla każdej strony. Na przykład w backendzie wygląda to tak:

Ale jeśli wyświetlisz to samo menu w interfejsie witryny, zobaczysz inne informacje, ponieważ używane są warunki alternatywne:

Ta karta może być świetnym narzędziem, gdy chcesz zidentyfikować właściwy haczyk lub tag warunkowy do użycia podczas dodawania nowej wtyczki lub funkcji motywu.

Co robi wtyczka Query Monitor

Gdy odwiedzasz dowolną stronę WordPress (z obszaru administracyjnego lub z interfejsu), wtyczka gromadzi wszystkie procesy WordPress, które mają miejsce zarówno na serwerze, jak i między serwerem a przeglądarką odwiedzającego. Aby Ci je pokazać, tworzy łatwy do odczytania raport, który można przeglądać, jak pokazano powyżej.

Ponieważ działa na każdej stronie Twojej witryny (zarówno z poziomu administratora, jak i frontonu), możesz go używać do debugowania dowolnych procesów frontonu lub zaplecza. Może to obejmować identyfikację i debugowanie powolnych zapytań do bazy danych, wywołania AJAX, żądania interfejsu API REST i wiele innych. Podane informacje są niezwykle przydatne, jeśli chodzi o określenie konkretnego problemu i mogą znacznie przyspieszyć rozwiązywanie problemów.

Kilka przykładów monitora zapytań

Istnieje ogromna liczba przypadków, w których użycie Monitora zapytań może pomóc. Na przykład monitorowanie zależności skryptów, hooków WordPress, szczegółów środowiska hostingowego i tagów zapytań warunkowych może pomóc w rozwiązaniu wielu problemów. Poniżej przyjrzymy się kilku typowym zastosowaniom.

Rozwiązywanie problemów z błędami składni

Na potrzeby tego przykładu użyliśmy niestandardowego zapytania SQL w szablonie pojedynczego posta.

 //// SLOW QUERY TEST global $wpdb; $prefix = $wpdb->prefix; $slowq = "SELECT * FROM {$prefix}_options WHERE option_name LIKE '%siteurl%'"; $results = $wpdb->get_results( $slowq ); echo $results[0]->option_value;

Gdy odświeżymy stronę, zobaczymy, że nie mamy wyników dla wydruku PHP. Ponadto karta Monitor zapytań zmieniła kolor na czerwony.

Jeśli najedziesz kursorem na ostrzeżenie, pojawi się kolejne, bardziej szczegółowe ostrzeżenie, które brzmi „Błędy bazy danych (1)”. Kliknij to, a zobaczysz szczegółowo błąd, co pomoże ci zrozumieć błąd składni.

Teraz, jeśli naprawisz błąd i przeładujesz stronę, ostrzeżenie powinno zniknąć.

Jak widać, dzięki wtyczce Query Monitor szybko znaleźliśmy przyczynę naszego problemu. Bez możliwości monitorowania zapytań w ten sposób może zająć wiele godzin, aby dowiedzieć się, dlaczego nie masz wyjścia echa i nadal nie widzisz dodatkowego „_”, który powinien zostać usunięty.

Żądania HTTP spowalniają czas ładowania strony

Wiele wtyczek ma tendencję do używania zbyt wielu zasobów zewnętrznych, wysyłając liczne żądania do zewnętrznych interfejsów API. Może to zdecydowanie spowolnić działanie witryny, a wtyczek, które to robią, należy unikać, jeśli to możliwe.

Wtyczki Google Analytics lub komentarze, takie jak Disqus, Jetpack lub Facebook Comments, to wtyczki, które właśnie to robią.

Zewnętrzny skrypt pobiera żądania z innych witryn. Nie jest to koniecznie złe (każda witryna WordPress prawdopodobnie korzysta z niektórych zasobów zewnętrznych). Ale kiedy używasz wtyczki lub skryptu, który wymaga wielu zewnętrznych zasobów, ważne jest, aby upewnić się, że faktycznie ich potrzebujesz i zastosowałeś najlepsze możliwe obejście, aby zminimalizować połączenia zewnętrzne.

Możesz sam zobaczyć różnicę, przesyłając skrypt jQuery na zewnętrzny serwer. Spójrz na czasy żądań, korzystając z kart „Żądanie” i „Wywołania interfejsu API HTTP” monitora zapytań. Następnie załaduj skrypt jQuery na swój własny serwer i poproś witrynę o wywołanie go z tej nowej wewnętrznej lokalizacji. Możesz być zaskoczony, gdy porównasz różnicę między czasami żądania zewnętrznego i wewnętrznego.

Użyj tych narzędzi, aby sprawdzić wszystkie używane wtyczki i sprawdzić, czy spowalniają one Twoją witrynę.

Szablony tematyczne

Wtyczka Monitor może również przydać się programistom motywów, ponieważ mogą przeglądać hierarchię szablonów i pliki PHP, które były używane do tworzenia stron internetowych.

Fajnie, prawda? Wszystkie informacje na wyciągnięcie ręki. Nazwa aktywnego motywu, klasy treści dla bieżącego żądania, wszystkie części szablonu, które zostały załadowane (lub nie załadowane) dla bieżącej strony oraz nazwa pliku szablonu i hierarchia.

Wniosek

Posiadanie odpowiednich narzędzi może znacznie ułatwić pracę programisty, a wtyczka Query Monitor zdecydowanie należy dodać do zestawu narzędzi! Wykorzystaj w pełni wtyczkę, aby monitorować używane zasoby, takie jak pamięć lub zawartość w pamięci podręcznej, lub wyśledzić wtyczkę, która powoduje problemy z wydajnością Twojej witryny.

Jeśli chcesz uzyskać więcej informacji na temat korzystania z Monitora zapytań, spójrz na ich stronę GitHub, która zawiera pełną listę funkcji. Miłego debugowania!