Расширенная отладка

Расширенная отладка

Патч, открытый исходный код

Админка InstantCMS 2.X

Мощная отладка для InstantCMS 2. Позволяет легко, наглядно и управляемо получить информацию о последовательности, времени выполнения, используемой памяти и других параметрах PHP-скриптов и частей CMS, а также о работе с базой данных и кешем.

Будет полезна как начинающим пользователям для изучения работы Двойки, так и опытным программистам для упрощения некоторых задач отладки компонентов и шаблонов. Также может быть использована для выявления причин тормозов и некоторых других проблем при размещении сайтов на реальных серверах.

Описание возможностей «Расширенной отладки»

Использование «Расширенной отладки» с примерами

Стандартный и полный режимы «Расширенной отладки»

Описание крайней и предыдущих версий в моём блоге


!!! Внимание! Будет перезаписана часть файлов ядра!! !

В стандартном режиме (он реализован в этом пакете с версии 14.1) только одна замена: файл встроенной (дефолтной) отладки /system/core/debugging.php будет заменён файлом «Расширенной отладки».

Полнофункциональный режим можно включить заменой ещё нескольких файлов ядра на модифицированные для сбора дополнительной отладочной информации.


Использование на реальных серверах

«Расширенная отладка» — это в первую очередь инструмент для изучения и анализа проектов на локалке, а также для разработки. Поэтому на реальных серверах её стоит использовать только в тестовой версии сайта на этапе выбора/настройки хостинга или в случае поиска причин некоторых проблем.

И хотя при отключении отладки в настройках в Админке она не загружается, а при отключении компонента его файлы тоже не подключаются, я крайне рекомендую ставить «Расширенную отладку» на работающие в продакшене сайты только если вы точно понимаете, зачем это делаете и как потом корректно вернуть дефолтную отладку.

!!! Осторожно! В некоторых случаях отладка может выводить на экран критичные для безопасности данные. Не отключайте на продакшене опцию «Показывать отладочную информацию только администраторам», тем более вместе с включённой опцией «Выводить в лог данные и результаты» !!!


Установка «Расширенной отладки»

Обычным пакетом через Админку сайта. Никаких изменений в базе данных, кроме стандартной записи о новом компоненте не производится. Заменяется один системный файл – класс отладки /system/core/debugging.php, а в системные папки добавляются класс конфига отладки и сам конфиг. Поэтому при установке через Админку будет показано предупреждение про изменение системных файлов – это нормально.


При удалении «Расширенной отладки» с сайта нужно:

1. Если использовались патчи полного режима, то заменить модифицированные файлы ядра на оригинальные файлы вашей версии InstantCMS 2 (смотрите страницу описания режимов работы).

2. Удалить «Расширенную отладку» как обычный компонент, включая стандартное ручное удаление всех файлов компонента по списку, выводимому в Админке после окончания удаления.

3. Скопировать файл /system/core/debugging.php из архива установщика InstantCMS 2 вашей версии в папку /system/core, заменив файл от «Расширенной отладки».


Обновление движка InstantCMS 2

При обновлении движка, не заменяющем файл класса расширенной отладки /system/core/debugging.php новым дефолтным классом, расширенная отладка продолжит работать в стандартном или смешанном режиме в зависимости от наличия патчей ядра для сбора отладочных данных и от изменений в обновлённом движке. Но для полноценной работы «Расширенной отладки» нужно будет обновить её до новой версии. То есть, больших проблем не будет.

Если при обновлении движка будет заменён файл класса расширенной отладки /system/core/debugging.php и при этом останутся патчи ядра полного режима отладки, то появятся ошибки при работе дефолтной отладки. Решить эту проблему может только разработчик движка (Fuze), добавив «в коробку» механизм выбора встроенной или альтернативной отладки.

Поэтому перед обновлением движка восстанавливайте дефолтные файлы ядра, как написано на странице описания режимов работы.


Дальнейшая поддержка «Расширенной отладки»

По возможности буду поддерживать компонент в актуальном состоянии. Но даже если я пропаду надолго, отладка будет работать в стандартном режиме на всех новых версиях Двойки, пока не будет сильно изменена система встроенной отладки. А модифицировать несколько файлов ядра для полного режима может любой начинающий программист простым сравнением различий и переносом их в новые файлы. Все мои правки файлов ядра выделены соответствующими комментариями в коде модифицированных файлов.

Нет сообщений...
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.