
- MODX 3
- PHP 8.1


| Объект | Что попадает в панель |
|---|---|
События OnHandleRequest, OnLoadWebDocument | Длительность между открытием и закрытием |
События OnMODXInit, OnWebPagePrerender | Строка на вкладке «Таймлайн» с 0 мс |
События менеджера (OnDocFormSave, OnResourceDelete и другие) | Плагин на них не подписан |
| Память и полное время | Вкладка «Обзор» |
| SQL | Одна строка с числом executedQueries и суммой queryTime. Текста запроса нет |
Обычный тег [[!Snippet]] и [[$chunk]] | Обёртка парсера ставится на OnMODXInit до getParser(). processElementTags() уходит во внутренний парсер и processTag() обёртки не вызывает |
| Сниппет из timings pdoTools | Строка загрузки modSnippet. Время: дельта этого шага, запросов SQL в строке 0 |
| Плагины | Не собираются |
Рекомендации и пороги slow_query_ms, slow_snippet_ms | Считаются в памяти. В HTML нет |
На профилируемом запросе SQLProfiler ставит cache_db в false.
В памяти считаются пять правил. Медленный SQL смотрит slow_query_ms. Медленный сниппет смотрит slow_snippet_ms и события типа snippet, которых сбор не добавляет. N+1 читает флаг is_n1, который сбор не ставит. Чанк отмечается от 50 вызовов. Сниппеты: info от 5, warning от 10. В HTML этого нет.
Если сервис pdotools есть, сбор читает его timings и ищет Loaded "modSnippet". Такая строка пишется при загрузке объекта. В тег попадает {$_modx->runSnippet("имя")} с дельтой шага как временем. Это не длительность выполнения и не SQL внутри сниппета.
Разбивки по чанкам tpl, модификаторам Fenom и вложенному {$_modx->runSnippet()} сбор не строит.
Если сервиса pdotools нет, каждый профилируемый запрос пишет в журнал MODX ошибку pdoTools service not found. Запрос при этом доходит до вставки панели.
Отдельной интеграции с miniShop3 в пакете нет. Приоритет OnMODXInit −100 задан так, чтобы плагин шёл раньше pdoTools и MiniShop3.
Число и сумму времени запросов смотрите в одной строке вкладки SQL. Текст запросов и план берите из журнала СУБД. Панель не показывает текст SQL и время выполнения msProducts.
Кэш сниппетов pdoTools настраивается в вызове сниппета. Параметры выборки описаны в общих свойствах pdoTools.