| |
ru:devel:debugging [2023/08/31 19:09] – создано vladpolskiy | ru:devel:debugging [Дата неизвестна] (текущий) – удалено - внешнее изменение (Дата неизвестна) 127.0.0.1 |
---|
====== Инструменты отладки ====== | |
| |
В «ДокуВики» есть инструменты отладки. Некоторые необходимо настроить. | |
| |
===Включить отладку=== | |
Если опция конфигурацииa [[config:allowdebug]] включена , вы можете: | |
* Добавляем ''?do=debug'' или ''&do=debug'' к URL-адресу , чтобы «ДокуВики» выводила огромный список строк отладки. | |
* (//Вплоть до версии Hogfather 2020 //: посмотрите выходные данные ''[[xref>dbglog()]]'' в ''data/cache/debug.log'') | |
* Получать дополнительные сообщения об ошибках, например, от некоторых серверов аутентификации. | |
* Добавление ''?httpdebug'' или ''&httpdebug'' к URL-адресу для включения вывода отладки в HTTPClient DokuWiki | |
* Вернуть несколько сообщений, если таблицы стилей отсутствуют | |
* Получайте дополнительные комментарии в выводе средства визуализации xhtml. | |
* Получите несколько резервных попыток в скомпилированном файле JavaScript с помощью ''js.php'' | |
* Получите отладку в некоторых других местах, а также в плагинах или шаблонах, см. поиск кода для использования [[https://codesearch.dokuwiki.org/search?project=dokuwiki&project=plugin&project=template&full=allowdebug&path=-%22config%2Flang%22|разрешенного дебага.]] | |
| |
===Включение ведения журнала=== | |
//С момента выпуска Игоря 2022 года ://: | |
| |
«ДокуВики» имеет функцию ведения журналов. Какая информация не регистрируется, можно установить с помощью [[config:dontlog]] настройки конфигурации. | |
* По умолчанию регистрируются только //сообщения об ошибках// и //устаревшие сообщения//, а //журнал отладки// отключен. | |
* Вы также можете включить //журнал отладки// для получения дополнительных результатов отладки. | |
* Через интерфейс администратора вы можете использовать [[plugin:LogViewer]]. Если доступ к LogViewer невозможен, вы можете найти файлы журналов в вашей файловой системе, например, в формате ''[wiki_folder]/data/log/error/<date>.log''. | |
| |
===Получить информацию о странице и пользователе=== | |
Добавление ''?do=check'' или ''&do=check'' к URL запускает [[devel:action_modes#other_functions1|проверку режима действия]], которая предоставляет некоторую информацию о разрешениях пользователей и настройке «ДокуВики». | |
| |
===Отладка TaskRunner === | |
| |
См. [[:taskrunner#Debugging|информацию об отладке]] на странице запуска задач. | |
| |
| |
=====Функции отладки===== | |
| |
* **''[[xref>dbg|dbg($msg)]]''** \\ Вставьте блок кода на вики-страницу, заполненный $msg в виде обычного текста.\\ \\ Добавление дополнительного аргумента ''dbg($msg, $hidden=true)'' вернет $msg в виде комментария html. | |
| |
* **''[[xref>dbglog|dbglog($msg)]]''** \\ Записывает $msg в журнал //отладки//, отображаемый в [[plugin:LogViewer]], который сохраняется ''[wiki_folder]/data/log/debug/<date>.log'' когда ''debug'' этот //флажок// снят в [[config:dontlog]] настройке.\\ (//Вплоть до версии Hogfather 2020//: он записывался в журнал в каталоге кеша ''data/cache/debug.log'' когда опция [[config:allowdebug]] включена.) Имейте в виду, что журнал не очищается автоматически.\\ \\ Используйте ''%%dbglog($msg, 'Header above log message')%%'' для включения заголовка над $msg. | |
| |
* **''[[xref>dbg_deprecated()|dbg_deprecated($alternative = '')]]''** \\ Функция для обозначения устаревших функций. Каждый вызов записывается в //устаревший журнал//, отображаемый в [[plugin:LogViewer]], если ''deprecated'' это флажок не установлен в [[config:dontlog]] настройке. В сообщении журнала упоминается: имя устаревшей функции, использующая ее функция, ее файл и строка, а также время ''$alternative'' предоставления. | |
| |
* **''[[xref>dbg_backtrace()]]''** \\ Напечатайте перевернутую, красиво напечатанную обратную трассировку. | |
| |
* **''[[xref>debug_guard|debug_guard($data)]]''** \\ Когда вы пишете собственную функцию отладки, используйте эту функцию для удаления всех данных из массива, ключ которого указывает на конфиденциальные данные. | |
| |
===== Плагин «Страж» ===== | |
| |
Плаген [[plugin:sentry|Sentry Plugin]] позволяет регистрировать обширную информацию в [[https://sentry.io|Sentry]] сервисе. Это особенно полезно при запуске бета-тестирования в реальной среде. | |
| |
| |
===== Смотрите также ===== | |
| |
* Конфигурацию опции [[config:allowdebug]] | |
* Конфигурацию опции [[config:dontlog]] и [[plugin:LogViewer]] для включения журналов | |
* [[devel:Кэширование]] | |
* У меня [[faq:blankpage|пустая страница]] или [[faq:error500|ошибка 500 (внутренняя ошибка сервера)]] | |
| |