Size: a a a

2020 December 14

IA

Iron Ass in Qt
благодарю)
источник

AS

Anatoly Shirokov in Qt
Iron Ass
всем привет, подскажите, пожалуйста, как отключить вывод варнингов кумла в консоль? на релизе тоже пишет
если там вывод через QLoggingCategory (надо смотреть сырцы), то вырубить вывод можно элегантее, чем использовать вырубающий все qInstallMessageHandler: https://doc.qt.io/qt-5/qloggingcategory.html#details
источник

S

Sergey eSKon in Qt
так кто говорит что нужно вырубать всё? Фильтр он на то и фильтр
источник

AS

Anatoly Shirokov in Qt
если там QLoggingCategory можно это делать другим способом
источник

S

Sergey eSKon in Qt
через QLoggingCategory никак не отключишь кстати
источник

S

Sergey eSKon in Qt
как?
источник

AS

Anatoly Shirokov in Qt
Default Category Configuration
Both the QLoggingCategory constructor and the Q_LOGGING_CATEGORY() macro accept an optional QtMsgType argument, which disables all message types with a lower severity. That is, a category declared with

Q_LOGGING_CATEGORY(driverUsbEvents, "driver.usb.events", QtWarningMsg)
источник

M

Mr.Mait in Qt
QLoggingCategory::defaultCategory()->setEnabled(QtMsgType::QtDebugMsg, false);

Правда одно не отключишь... fatal сообщения, которые внутри вызывают abort()
источник

RG

Renat Garaev in Qt
Никак получается не "скрыть" того, что приложение на QT? Если скрывать любые лог актиновсти?
источник

AS

Anatoly Shirokov in Qt
Mr.Mait
QLoggingCategory::defaultCategory()->setEnabled(QtMsgType::QtDebugMsg, false);

Правда одно не отключишь... fatal сообщения, которые внутри вызывают abort()
ну, скажем и безнадобности, fatal завершает приложение
источник

M

Mr.Mait in Qt
Ну и вырубить соответственно все категории QtDebugMsg, QtWarningMsg, QtCriticalMsg, QtInfoMsg
источник

AS

Anatoly Shirokov in Qt
Mr.Mait
Ну и вырубить соответственно все категории QtDebugMsg, QtWarningMsg, QtCriticalMsg, QtInfoMsg
не обязательно, там учитывается severity
источник

S

Sergey eSKon in Qt
а, defaultCategory если... хмм.. ну да
источник

M

Mr.Mait in Qt
Anatoly Shirokov
не обязательно, там учитывается severity
Я не углублялся, надо будет глянуть. Давно написал по-быстрому обертку логгера на основе Qt, чтобы можно было настраивать вывод и какие сообщения отключать
источник

S

Sergey eSKon in Qt
но вообще собственный хэндлер - хорошая практика. Я без него коммерческие приложения никогда не делаю
источник

S

Sergey eSKon in Qt
на некторых десктопных приложениях логи в модель даже добавляются
источник

AS

Anatoly Shirokov in Qt
ага, аля 1С журнал работы приложения
источник

S

Sergey eSKon in Qt
а на мобильных у меня есть код развёртывающий стек при фатал - не раз выручало
источник

S

Sergey eSKon in Qt
а то по умолчанию если аборт где-нибудь внутри кьюта, то вообще непонятно что к этому привело
источник

M

Mr.Mait in Qt
Sergey eSKon
а на мобильных у меня есть код развёртывающий стек при фатал - не раз выручало
Пробовал для qSetMessagePattern добавить это?
"%{if-fatal}"
  "\n\t\t\t"
  "%{backtrace depth=25 separator=\"\n\t\t\t\"}"
"%{endif}"
источник