Spec-Zone.ru › Qt 5.13

Отладка и профилирование Qt WebEngine

Ведение журнала консоли

JavaScript, выполняемый внутри Qt WebEngine, может использовать API консоли Chrome, чтобы записывать информацию в консоль. Сообщения об ошибках передаются в средства регистрации Qt внутри js категории регистрации. Однако по умолчанию выводятся только сообщения об ошибках и критических ошибках. Чтобы изменить это, необходимо либо установить пользовательские правила для js категории, либо предоставить пользовательские обработчики сообщений, переопределив QWebEnginePage::javaScriptConsoleMessage() или подключившись к WebEngineView::javaScriptConsoleMessage().

Все сообщения также доступны через инструменты разработчика Qt WebEngine.

Инструменты разработчика Qt WebEngine

Модуль Qt WebEngine предоставляет инструменты разработчика веб-приложений, которые упрощают инспекцию и отладку проблем с макетом и производительностью любого веб-контента.

Доступ к инструментам разработчика осуществляется как к локальной веб-странице с помощью браузера на основе Chromium или Qt WebEngine, например, браузера Chrome.

Чтобы активировать инструменты разработчика, запустите приложение, использующее Qt WebEngine, с аргументами командной строки:

--remote-debugging-port=<port_number>

Где <port_number> относится к локальному порту сети. Затем к инструментам веб-разработчика можно получить доступ, запустив браузер по адресу http://localhost:<port_number>.

В качестве альтернативы можно установить переменную окружения QTWEBENGINE_REMOTE_DEBUGGING. Она может быть установлена как просто порт, работающий аналогично --remote-debugging-port или с указанием адреса хоста и порта. Последний вариант позволяет управлять сетевым интерфейсом, так что к инструментам разработчика можно получить доступ с удалённого устройства.

Подробное описание возможностей инструментов разработчика см. на странице Chrome DevTools.

Использование аргументов командной строки

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

  • --disable-gpu отключает ускорение аппаратного ускорения GPU. Это полезно при диагностике проблем с OpenGL.
  • --disable-logging отключает ведение журнала консоли, что может быть полезно для отладочных сборок.
  • --enable-logging --log-level=0 включает ведение журнала консоли и устанавливает уровень регистрации в 0, что означает, что в журнале записываются сообщения с уровнем серьезности info и выше. Это значение по умолчанию для отладочных сборок. Другие возможные уровни регистрации — 1 для предупреждений, 2 для ошибок и 3 для критических ошибок.
  • --v=1 увеличивает уровень регистрации за пределы возможностей --log-level и включает регистрирование отладочных сообщений до уровня подробности 1. Более высокое число увеличивает подробность, но может привести к большому количеству зарегистрированных сообщений. По умолчанию 0 (нет сообщений об отладке).
  • --no-sandbox отключает песочницу для процессов рендеринга и плагинов. Имейте в виду, что отключение песочницы может представлять собой угрозу безопасности.
  • --single-process запускает процессы рендеринга и плагинов в том же процессе, что и браузер. Это полезно для получения стеков вызовов при ошибках рендеринга.

В качестве альтернативы можно установить переменную окружения QTWEBENGINE_CHROMIUM_FLAGS. Например, следующее значение можно установить для отключения регистрации при отладке приложения под названием mybrowser:

QTWEBENGINE_CHROMIUM_FLAGS="--disable-logging" mybrowser

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qtwebengine-debugging.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API