Query Monitor – The developer tools panel for WordPress

Beschrijving

Querymonitor is het venster ontwikkeltools voor WordPress. Het maakt foutopsporing van databasequery’s, PHP-fouten, haken en acties, blokeditor blokken, in de wachtrij staande scripts en stylesheets, HTTP API aanroepen en meer mogelijk.

It includes some advanced features such as debugging of Ajax calls, REST API calls, user capability checks, and full support for block themes and full site editing. It includes the ability to narrow down much of its output by plugin or theme, allowing you to quickly determine poorly performing plugins, themes, or functions.

Query Monitor richt zich sterk op het presenteren van de informatie op een nuttige manier, bijvoorbeeld door geaggregeerde databasequery’s te tonen die zijn gegroepeerd op de plug-ins, thema’s of functies die hiervoor verantwoordelijk zijn. Het voegt een menu van de beheer toolbar toe dat een overzicht van de huidige pagina toont, met volledige fout opsporingsinformatie die in vensters wordt getoond zodra u een menu artikel selecteert.

Query Monitor supports versions of WordPress up to three years old, and PHP version 7.4 or higher.

Zie voor volledige informatie de site van de Query Monitor.

Hier vindt je een overzicht van wat er voor elke paginabelasting wordt weergegeven:

  • Databasequery’s, inclusief meldingen voor langzame, dubbele of foutieve query’s. Hiermee je kunt filteren op querytype ( SELECT UPDATE ,,, DELETE enz.), verantwoordelijke component (plugin, thema, WordPress-kern) en aanroepfunctie en afzonderlijke geaggregeerde weergaven voor elk.
  • The template filename, the complete template hierarchy, and names of all template parts that were loaded or not loaded (for block themes and classic themes).
  • PHP fouten mooi gepresenteerd samen met hun verantwoordelijke component en call stack, en een zichtbare waarschuwing in de beheer werkbalk.
  • Usage of “Doing it Wrong” or “Deprecated” functionality in the code on your site.
  • Blocks and associated properties within post content and within full site editing (FSE).
  • Overeenkomende herschrijfregels, bijbehorende query tekenreeksen en queryvars.
  • In de wachtrij voor scripts en stylesheets, samen met hun afhankelijkheden, afhankelijkheden en waarschuwingen voor verbroken afhankelijkheden.
  • Taalinstellingen en geladen vertaalbestanden (MO bestanden en JSON bestanden) voor elk tekstdomein.
  • HTTP API aanvragen, met antwoord code, verantwoordelijke component en tijd die nodig zijn, met waarschuwingen voor mislukte of foutieve aanvragen.
  • Gebruikerscapaciteit controles, samen met het resultaat en eventuele parameters doorgegeven aan de mogelijkheid te controleren.
  • Omgevingsinformatie, inclusief gedetailleerde informatie over PHP, de database, WordPress en de webserver.
  • De waarden van alle Voorwaardelijke functies van WordPress, zoals is_single() , is_home() enz.
  • Tijdelijke transiënten die zijn bijgewerkt.
  • Usage of switch_to_blog() and restore_current_blog() on Multisite installations.

Bovendien:

  • Wanneer er een omleiding plaatsvindt, voegt Query Monitor een HTTP header toe met de call stack, zodat u uw favoriete HTTP-controle- of browser ontwikkelaarstools gebruiken om te traceren wat de omleiding heeft geactiveerd.
  • Het antwoord van een door jQuery geïnitieerd Ajax verzoek op de pagina bevat verschillende fout opsporingsinformatie in de headers. PHP fouten krijgen ook uitvoer naar de ontwikkelaarsconsole van de browser.
  • Het antwoord van een geauthenticeerd WordPress REST API request zal een overzicht van prestatie informatie en PHP fouten in de headers bevatten, zolang de geauthenticeerde gebruiker toestemming heeft om de Query Monitor’s uitvoer te bekijken. Een een omhuld REST API request zal nog meer debugging informatie bevatten in de qm eigenschap van het antwoord.

Standaard wordt de uitvoer van querymonitor alleen weergegeven aan beheerders van installaties op één site en Superadministrators op installaties met meerdere locaties.

Daarnaast u een verificatiecookie instellen waarmee u querymonitor uitvoer bekijken wanneer je niet bent ingelogd (of als je bent ingelogd als niet-administrator). Zie het venster Instellingen voor meer informatie.

Other Plugins

Ik onderhoud verschillende andere plugins voor ontwikkelaars. Bekijk ze eens:

Privacyverklaring

Query Monitor is private by default and always will be. It does not persistently store any of the data that it collects. It does not send data to any third party, nor does it include any third party resources. Query Monitor’s full privacy statement can be found here.

Accessibility Statement

Query Monitor aims to be fully accessible to all of its users. Query Monitor’s full accessibility statement can be found here.

Schermafbeeldingen

  • Menu Werkbalk Beheerder
  • Databasequery's samenvoegen per component
  • Capaciteitscontroles
  • Databasequery's
  • Hooks en acties
  • HTTP API aanvragen
  • Databasequery's samenvoegen op functie aanroepen

FAQ

Werkt deze plugin met PHP 8?

Yes, it’s actively tested and working up to PHP 8.2.

Wie kan de uitvoer van Query Monitor zien?

Standaard wordt de uitvoer van querymonitor alleen weergegeven aan beheerders van installaties op één site en Superadministrators op installaties met meerdere locaties.

Daarnaast u een verificatiecookie instellen waarmee u querymonitor uitvoer bekijken wanneer je niet bent ingelogd of wanneer je bent ingelogd als gebruiker die de uitvoer van Query Monitor meestal niet kan zien. Zie het venster Instellingen voor meer informatie.

Heeft Query Monitor zelf invloed op de tijd of het geheugengebruik van de pagina?

Kort antwoord: Ja, maar slechts een beetje.

Long answer: Query Monitor has a small impact on page generation time because it hooks into a few places in WordPress in the same way that other plugins do. The impact is negligible.

On pages that have an especially high number of database queries (in the hundreds), Query Monitor currently uses more memory than I would like it to. This is due to the amount of data that is captured in the stack trace for each query. I have been and will be working to continually reduce this.

Can I prevent Query Monitor from collecting data during long-running requests?

Yes, you can call do_action( 'qm/cease' ) to instruct Query Monitor to cease operating for the remainder of the page generation. It will detach itself from further data collection, discard any data it’s collected so far, and skip the output of its information.

This is useful for long-running operations that perform a very high number of database queries, consume a lot of memory, or otherwise are of no concern to Query Monitor, for example:

  • Backing up or restoring your site
  • Importing or exporting a large amount of data
  • Running security scans

Zijn er add-on plugins voor Query Monitor?

A list of add-on plugins for Query Monitor can be found here.

Daarnaast ondersteunt Query Monitor op transparante wijze add-ons voor de debug bar plugin. Als er add-ons van de fout opsporingsbalk zijn geïnstalleerd, deactiveer je de fout opsporingsbalk en worden de invoegtoepassingen weergegeven in het menu van querymonitor.

Waar kan ik een nieuwe functie voorstellen of een bug melden?

Gebruik de issue tracker op Query Monitor’s GitHub repo omdat het makkelijker is om problemen daar bij te houden, in plaats van op de wordpress.org support forums.

Is Query Monitor available on Altis?

Yes, the Altis Developer Tools are built on top of Query Monitor.

Is Query Monitor beschikbaar op WordPress VIP?

Yes, but a user needs to be granted the view_query_monitor capability to see Query Monitor even if they’re an administrator. See the WordPress VIP documentation for more details.

Ik gebruik meerdere exemplaren van ‘wpdb’. Hoe krijg ik mijn extra exemplaren te zien in Query Monitor?

This feature was removed in version 3.12 as it was rarely used and considerably increased the maintenance burden of Query Monitor itself. Feel free to continue using version 3.11 if you need to make use of this feature.

Can I click on stack traces to open the file in my editor?

Ja. Je kunt dit inschakelen in het venster Instellingen.

How can I report a security bug?

You can report security bugs through the Patchstack Vulnerability Disclosure Program. The Patchstack team helps validate, triage, and handle any security vulnerabilities. Report a security vulnerability here.

Accepteer je donaties?

I am accepting sponsorships via the GitHub Sponsors program. If you work at an agency that develops with WordPress, ask your company to provide sponsorship in order to invest in its supply chain. The tools that I maintain probably save your company time and money, and GitHub sponsorship can now be done at the organisation level.

Als toevoeging, als je van de plugin houd, zou ik graag zien dat je een beoordeling achterlaat. Vertel al je vrienden ook over de plugin!

Beoordelingen

Lees alle 443 beoordelingen

Bijdragers & ontwikkelaars

“Query Monitor – The developer tools panel for WordPress” is open source software. De volgende personen hebben bijgedragen aan deze plugin.

Bijdragers

“Query Monitor – The developer tools panel for WordPress” is vertaald in 23 talen. Dank voor de vertalers voor hun bijdragen.

Vertaal “Query Monitor – The developer tools panel for WordPress” naar jouw taal.

Interesse in ontwikkeling?

Bekijk de code, haal de SVN repository op, of abonneer je op het ontwikkellog via RSS.

Changelog

3.16.2 (22 April 2024)

  • Fixes another issue with the PHP autoloader in 3.16.0 and 3.16.1 that was crashing some sites

3.16.1 (22 April 2024)

  • Fixes an issue with the PHP autoloader in 3.16.0 that was crashing some sites

3.16.0 (22 April 2024)

  • Adds full support for debugging new features in WordPress 6.5: JavaScript modules and PHP translation files

3.15.0 (10 November 2023)

3.14.1 (21 October 2023)

  • Improves compatibility with WordPress Playground

3.14.0 (18 October 2023)

  • Corrects the port number handling when displaying URLs for scripts and styles
  • Improves the db.php handling when activating and deactivating Query Monitor on a single site within a Multisite network, and when DISALLOW_FILE_MODS is in use
  • Improves check for Debug Bar existence
  • Identifies drop-in plugins as a specific component instead of “other”
  • Simplifies some of the data structure used when logging queries
  • Specifies that Query Monitor supports WordPress versions up to three years old

3.13.1 (15 July 2023)

  • Avoids a fatal error if a deprecated warning is triggered early on during the bootstrap process
  • Avoids a PHP warning that can be triggered during certain HTTP API requests when Curl is not in use
  • Skips loading QM during the plugin update process

3.13.0 (9 July 2023)

  • Adds a dedicated panel for “Doing it Wrong” and deprecated functionality usage
  • Allows data in the HTTP API requests panel to be filtered by host name
  • Adds a “Type” column wherever a list of hooks can show both actions and filters
  • Improves various aspects of the “Editor” setting
  • Increases the minimum supported version of PHP to 7.4
  • Many thanks to @crstauf for the majority of the new features in this release

3.12.3 (17 May 2023)

  • Improves theme template part data collection when the Gutenberg plugin is in use with a block theme
  • Skips attempting to resolve a block template if the theme doesn’t support block templates
  • Removes the fallback to $EZSQL_ERROR for database query errors as it’s not possible to determine if the error should be ignored

3.12.2 (27 April 2023)

  • Adds the total count to the table footer of the PHP Errors panel
  • Improves the destination URL for links that point to the site editor
  • Implements some minor visual improvements
  • Removes unreliable information about the transport for HTTP API requests
  • Removes Query Monitor output from the interim login modal

3.12.1 (24 March 2023)

  • Corrects some inter-panel links that point to the Queries panel and sub-panels
  • Switches to sessionStorage for the selected table column filters so they don’t persist across tabs or sessions
  • Removes the “Debug Bar:” prefix on the menus for panels inherited from the Debug Bar plugin

3.12.0 (16 March 2023)

  • Clarifies and improves information in the Template panel when a block theme or full site editing (FSE) is in use
  • Avoids PHP warnings if a third party plugin makes unexpected changes to language file paths
  • Implements some minor performance improvements
  • Removes misleading information about WordPress memory limits
  • Removes support for multiple instances of wpdb (see the FAQ for more information)

3.11.2 (23 February 2023)

  • Implements various accessibility improvements
  • Fixes an issue where not all admin area footer scripts were shown in the Scripts panel
  • Improves output when the SQLite feature in the Performance Labs plugin is in use
  • Removes QM output altogether from the Customizer
  • Ensures wp-content/db.php from another plugin doesn’t get removed when deactivating QM

3.11.1 (3 January 2023)

  • Avoids a fatal error in PHP 8 when posix_getpwuid() or posix_getgrgid() doesn’t return an expected value.

3.11.0 (30 December 2022)

  • Adds a new “Multisite” panel that shows usage of switch_to_blog() and restore_current_blog() on Multisite installations
  • Improves the output shown for blocks and template parts when block themes or full site editing is in use
  • Introduces new QM_Data and QM_Component classes to make the data collection more structured and reliable
  • Increases the minimum supported version of PHP to 7.2
  • Improves the performance of SVG icons
  • Removes the ability to completely hide silenced PHP errors
  • Avoids some deprecated notices in PHP 8.2
  • Improves the performance of the PHP class autoloader

3.10.1 (9 September 2022)

  • Prevents logging duplicate entries for multiple calls to load the same translation file
  • Brings the dispatcher priority back down to 9 for maximum compatibility with other plugins that use a shutdown handler

3.10.0 (8 September 2022)

  • Adds information about the current language on the Languages panel
  • Reduces the chance that Query Monitor blames itself for PHP errors that don’t have a stack trace
  • Replaces the use of Dashicons with inline SVGs and removes the dashicons dependency
  • Switches to class autoloading via Composer for reduced memory usage
  • Changes the priority of the shutdown dispatcher from 0 to PHP_INT_MAX to ensure as much data as possible is collected
  • Improves the styling of Debug Bar add-ons
  • Fixes some erroneous localisation of float values in REST API output
  • Bumps the minimum supported PHP version to 5.6
  • Improves various other bits and bobs

Earlier versions

For the changelog of earlier versions, please refer to the releases page on GitHub.