쿼리 모니터 플러그인

게시 됨: 2021-02-19

WordPress 웹 사이트가 로드될 때마다 데이터베이스에서 정보를 가져오고 페이지를 빌드한 다음 로드할 때 뒤에서 수많은 일이 진행됩니다. 이러한 쿼리는 데이터베이스에서 정보를 검색하고 모든 테마, 플러그인 및 코어 파일을 포함할 수 있기 때문에 어떤 방식으로든 모니터링할 수 있다면 매우 유용합니다. Query Monitor 플러그인을 소개합니다.

Query Monitor 플러그인은 WordPress 쿼리를 모니터링하는 가장 인기 있는 도구 중 하나입니다. 훌륭한 지원과 정기적인 업데이트를 제공하는 전담 팀과 함께 Query Monitor 플러그인은 웹사이트 디버깅 시 웹 개발자에게 귀중한 도움을 제공합니다.

Query Monitor 플러그인을 자세히 살펴보고 어떻게 사용할 수 있는지 살펴보겠습니다.

쿼리 모니터 플러그인 소개

쿼리 모니터는 무료 WordPress 디버깅 도구입니다. 모든 WordPress 플러그인과 마찬가지로 플러그인 관리 영역에서 Query Monitor를 설치할 수 있습니다.

플러그인이 설치되고 활성화되면 현재 페이지의 로드 통계를 자세히 설명하는 숫자 그룹이 방문하는 모든 페이지(프론트엔드 및 백엔드 보기 모두에서)에 나타납니다. 이 4개의 숫자는 페이지 생성 시간, PHP 메모리 사용량, 데이터베이스 쿼리 시간, 쿼리 횟수를 나타냅니다.

이 숫자를 가리키면 추가 데이터에 대한 링크를 제공하는 드롭다운 메뉴가 나타납니다.

이러한 링크 중 하나를 클릭하면 결과를 필터링하는 데 사용할 수 있는 위에 표시된 메뉴와 동일한 사이드바 메뉴가 있는 창이 페이지 하단에 나타납니다. 아래 스크린샷은 'Hooks & Actions' 옵션에 대한 일부 결과를 보여줍니다.

메뉴의 마지막 탭은 '조건'이라고 하며 모든 페이지에 대해 동일하지 않습니다. 예를 들어 백엔드에서 다음과 같이 표시됩니다.

그러나 웹 사이트의 프런트 엔드에서 동일한 메뉴를 보면 대체 조건이 사용됨에 따라 몇 가지 다른 정보가 표시됩니다.

이 탭은 새 플러그인 또는 테마 기능을 추가할 때 사용할 오른쪽 후크 또는 조건부 태그를 식별하려는 경우에 훌륭한 도구가 될 수 있습니다.

쿼리 모니터 플러그인이 하는 일

WordPress 페이지(관리 영역 또는 프런트 엔드 내에서)를 방문하면 플러그인은 서버와 서버와 방문자의 브라우저 사이에서 발생하는 모든 WordPress 프로세스를 수집합니다. 이를 보여주기 위해 위와 같이 볼 수 있는 읽기 쉬운 보고서를 만듭니다.

웹사이트의 모든 페이지(관리 및 프런트 엔드 모두)에서 작동하므로 이를 사용하여 프런트 엔드 또는 백 엔드 프로세스를 디버그할 수 있습니다. 이는 느린 데이터베이스 쿼리, AJAX 호출, REST API 요청 등을 식별하고 디버깅하는 것까지 다양합니다. 제공된 정보는 특정 문제를 정확히 찾아낼 때 매우 유용하며 문제 해결 속도를 크게 높일 수 있습니다.

몇 가지 쿼리 모니터 예

쿼리 모니터를 사용하는 것이 도움이 될 수 있는 많은 인스턴스가 있습니다. 예를 들어 모니터링 스크립트 종속성, WordPress 후크, 호스팅 환경 세부 정보 및 조건부 쿼리 태그는 많은 문제를 해결하는 데 도움이 될 수 있습니다. 아래에서 몇 가지 일반적인 용도를 간단히 살펴보겠습니다.

구문 오류 문제 해결

이 예제의 목적을 위해 단일 게시물의 템플릿에서 사용자 지정 SQL 쿼리를 사용했습니다.

 //// 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;

페이지를 새로 고칠 때 PHP 인쇄 출력에 대한 결과가 없음을 알 수 있습니다. 또한 쿼리 모니터 탭이 빨간색으로 바뀌었습니다.

경고 위로 마우스를 가져가면 '데이터베이스 오류(1)'라는 더 자세한 경고가 표시됩니다. 이를 클릭하면 구문 오류를 이해하는 데 도움이 되는 오류를 자세히 볼 수 있습니다.

이제 오류를 수정하고 페이지를 새로고침하면 경고가 사라집니다.

보시다시피 Query Monitor 플러그인을 사용하여 문제의 원인을 빠르게 찾았습니다. 이러한 방식으로 쿼리를 모니터링하는 기능이 없으면 에코 출력이 없고 제거해야 하는 추가 "_"가 표시되지 않는 이유를 파악하는 데 몇 시간이 걸릴 수 있습니다.

웹사이트 로드 시간을 늦추는 HTTP 요청

많은 플러그인은 외부 API에 수많은 요청을 하여 너무 많은 외부 리소스를 사용하는 경향이 있습니다. 이것은 확실히 사이트 속도를 늦출 수 있으며 가능하면 이를 수행하는 플러그인을 피해야 합니다.

Disqus, Jetpack 또는 Facebook Comments와 같은 Google Analytics 또는 주석 플러그인은 바로 이 작업을 수행하는 플러그인입니다.

외부 스크립트는 다른 웹사이트에서 요청을 가져옵니다. 이것은 꼭 필요한 것은 아닙니다(모든 WordPress 웹사이트는 일부 외부 리소스를 사용할 수 있음). 그러나 여러 외부 리소스를 요청하는 플러그인이나 스크립트를 사용할 때 실제로 필요한지 확인하고 외부 호출을 최소화하기 위해 가능한 최선의 해결 방법을 적용했는지 확인하는 것이 중요합니다.

외부 서버에 jQuery 스크립트를 업로드하여 차이점을 직접 확인할 수 있습니다. 쿼리 모니터 '요청' 및 'HTTP API 호출' 탭을 사용하여 요청 시간을 살펴보세요. 그런 다음 jQuery 스크립트를 자체 서버에 로드하고 웹사이트에서 이 새로운 내부 위치에서 호출하도록 합니다. 외부 요청 시간과 내부 요청 시간의 차이를 비교하면 놀랄 수 있습니다.

이 도구를 사용하여 사용 중인 플러그인을 확인하여 웹사이트 속도를 늦추는지 확인하십시오.

테마 템플릿

모니터 플러그인은 웹사이트 페이지를 구축하는 데 사용된 템플릿 계층과 PHP 파일을 볼 수 있기 때문에 테마 개발자에게도 유용할 수 있습니다.

멋지죠? 당신의 손가락 끝에서 모든 정보. 활성 테마 이름, 현재 요청의 본문 클래스, 현재 페이지에 대해 로드된(또는 로드되지 않은) 모든 템플릿 부분, 템플릿 파일 이름 및 계층.

결론

올바른 도구를 소유하면 개발자의 작업이 훨씬 쉬워질 수 있으며 Query Monitor 플러그인은 확실히 툴킷에 추가할 수 있는 플러그인입니다! 플러그인을 최대한 활용하여 메모리 또는 캐시된 콘텐츠와 같이 사용 중인 리소스를 모니터링하거나 웹사이트의 성능 문제를 일으키는 플러그인을 추적하십시오.

Query Monitor 사용에 대한 자세한 내용을 보려면 전체 기능 목록을 제공하는 GitHub 페이지를 살펴보십시오. 즐거운 디버깅!