Spec-Zone.ru › Qt 5.9

Отладка и профилирование 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 для критических ошибок.
  • --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.9/qtwebengine-debugging.html

Spec-Zone.ru

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