Режим отладки (debug) wb-rules

Здравствуйте.
Пытаюсь по православному все отладочные сообщения в wb-rules писать через log.debug, но в логах ничего не появляется.
/devices/wbrules/controls/Rule debugging=true (включил через соотв. устройство в UI контроллера). После этого перезагружал.
Обычный log работает.

ПС: MQTT-топиков /wbrules/log/* указанных в документации, у себя не наблюдаю. Логи смотрю через journalctl.

Добрый день.
Debug публикуется в mqtt.
Для примера

        log.info("Переключение управления");
        log.debug("Переключение управления newValue=", newValue, "devName=", devName);

А в каком разделе документации?

По ссылке wb-rules/README.md at master · wirenboard/wb-rules · GitHub есть текст

Помимо syslog, сообщение дублируется в зависимости от функции в виде MQTT-сообщения в топике /wbrules/log/debug , /wbrules/log/info , /wbrules/log/warning , /wbrules/log/error

В каком топике искать, если эти указаны не верно?

И, все-таки, я даже в syslog debug-сообщений не вижу. Может быть еще что-то надо включить кроме /devices/wbrules/controls/Rule debugging=true ? Или, может быть, обязательно иметь тестовую прошивку (у меня стабильная)?

Добрый день,

Необходимые топики и информацию можно получить командой:

mosquitto_sub -t "/#" -v | grep "wbrules"

Эта команда отфильтрует сообщения, связанные с wbrules, из всех MQTT-топиков.

Добрый день, удалось ли решить вопрос?

Здравствуйте.
У меня в выводе этой команды нет топиков с логами:

root@wirenboard-AJV7E3S2:~# mosquitto_sub -t “/#” -v | grep “wbrules”
/rpc/v1/wbrules/Editor/ChangeState 1
/rpc/v1/wbrules/Editor/List 1
/rpc/v1/wbrules/Editor/Load 1
/rpc/v1/wbrules/Editor/Remove 1
/rpc/v1/wbrules/Editor/Save 1
/devices/wbrules/meta {“driver”:“wb-rules”,“title”:{“en”:“Rule engine settings”,“ru”:“Настройки движка правил”}}
/devices/wbrules/meta/name Rule engine settings
/devices/wbrules/meta/driver wb-rules
/devices/wbrules/controls/Rule debugging 1
/devices/wbrules/controls/Rule debugging/meta {“order”:1,“readonly”:false,“title”:{“en”:“Rule debugging”,“ru”:“Отладка правил”},“type”:“switch”}
/devices/wbrules/controls/Rule debugging/meta/type switch
/devices/wbrules/controls/Rule debugging/meta/order 1
/devices/wbrules/controls/Rule debugging/meta/readonly 0

И сообщений из log.debug я по прежнему не вижу.
Меня более чем устроило бы и через journalctl смотреть. Но не показывает DEBUG :frowning: Только сообщения INFO.

Добрый день,

Добавьте следующий код в ваш скрипт:

log.info("Переключение управления");
log.debug("Переключение управления newValue=", newValue, "devName=", devName);

После вставки проверьте, отображаются ли данные в логах.

Дополнительно можно просматривать все логи через веб-интерфейс:

  1. Перейдите в «История».
  2. Выберите нужный раздел для анализа логов.

Добрый день, удалось ли решить вопрос?

Здравствуйте.
Это ровно то, с чего начался этот топик: “обычный лог” (log = log.info) работает, а log.debug - нет.

Пока нет. Вы же еще не предложили решения :slight_smile:

Сообщения log.debug в систему журналирования не попадают, так и задумано. И сообщения публикуются в /wbrules/log/debug (/wbrules/log/info, /wbrules/log/warning), я проверил на прошивке stable - публикуется. Тут надо учесть, что публикация происходит без флага RETAIN, поэтому топики вы увидите только после публикации соотв. сообщений.

Есть еще топики /devices/wbrules/controls/+ - не перепутайте.

1 лайк

Нет у меня ни одного из этих топиков :frowning:

Код, указанный выше, добавил. INFO в логах вижу:

На вкладке “Каналы MQTT” вы этих топиков не увидите - там только субтопики топика /devices. Воспользуйтесь утилитами MQTT Explorer или mosquitto_sub - увидите. Из скриптов читать эти топики можно при помощи функции trackMqtt(), она описана в документации.

warning и error тоже увидите, а вот debug - только в панели сообщений веб-интерфейса контроллера (и в топике /wbrules/log/debug).

“Панель сообщений веб-интерфейса контроллера” это “Системный журнал”?

Там тоже не вижу:

Это нижнее окошко в веб-интерфейсе:

Открывается вот этой кнопкой:
image

1 лайк

Да. Тут все видно. Спасибо! :slight_smile:
Неплохо было бы обо всем этом сказать в документации, где описываете log.debug.

1 сообщение было перенесено в новую тему: MQTT Explorer не видно /devices/wbrules/log