Добрый день.
Контроллер WB5.3
При попытке посмотреть историю крутит баранку и выдает сообщение:
Error getting history: MQTT RPC request timed out MqttTimeoutError
Полез на сюда на форум ТП и вычитал что надо смотреть целоснтность файла:
/mnt/data/var/lib/wirenboard/db/data
Такой файл есть но он пустой. Нулевой длинны.
Я его удалил и перезагрузил контроллер.
Новый файлик не создался. Проблема не пропала.
Подскажите как вернуть файл бд и что делать с неработающей историей.
Этот контроллер долгое время не использовался и возможно был обесточен.
Сейчас из периферии подключен далласовский термометр.
Здравствуйте! Проверьте, пожалуйста, запущен ли сервис wb-mqtt-db с помощью команды:
systemctl status wb-mqtt-db
Вывод команды пришлите. Если сервис не запущен, то запустите его командой:
systemctl start wb-mqtt-db
Статус сервиса вот.
● wb-mqtt-db.service - LSB: : Wiren Board database logger
Loaded: loaded (/etc/init.d/wb-mqtt-db; generated; vendor preset: enabled)
Active: active (exited) since Thu 2016-11-03 17:17:19 UTC; 10h ago
Docs: man:systemd-sysv-generator(8)
Process: 441 ExecStart=/etc/init.d/wb-mqtt-db start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/wb-mqtt-db.service
ноя 03 17:17:09 wirenboard-AOX4T3PZ systemd[1]: Starting LSB: : Wiren Board database logger…
ноя 03 17:17:19 wirenboard-AOX4T3PZ systemd[1]: Started LSB: : Wiren Board database logger.
Сервис стартует и останавливается без проблем в логах ошибок не наблюдаю.
Как я понимаю, данный сервис у вас не работал. А он нужен для сохранения данных и их отображения.
Запустите сервис командой
systemctl start wb-mqtt-db
Убедитесь, что он работает. А затем откройте страницу истории, она должна нормально работать. Также пришлите, пожалуйста, скриншоты или видео с проблемой.
Я видимо неудачно выразился. Этот сервис у меня отлично работал. И я его перезапускал в надежде что он создаст новую БД. И при рестарте контроллера он стартует без проблем.
Сервис wb-mqtt-db запущен и вероятно работает. НО файл бд не создается и данные в истории не видны.
Еще обнаружилась проблема с невозможностью редактировать конфигурацию
Больше всего удручает отсутствие сообщений об ошибках в логах.
Выбираю датчик температуры.
Нажимаю Load Data. В ответ появляется кружок сомволизирующий ожидание. И больше этот кружок никуда не девается.
Через некоторое время приходит сообщение о таймауте.
Это статус неработающего сервиса. Сервис точно работает?
Покажите настройки на странице конфигурации Истории. Должно быть так:
Для диагностики проблемы пришлите, пожалуйста, архив с диагностической информацией контроллера. Создание архива описано в инструкции.
Вы правы сервис действительно не работает. Но выглядит это вот так. Судя по логу сервис включается и тут же выключается обратно.
На скриншоте сначала статус выключенного сервиса. Потом я его включаю и вновь вывожу статус.
Настройки показать не могу. Они тоже не отображаются.
Вместо этого появляется сообщение Error loading the file: Invalid config file EditorError
Из веб интерфейса выгрузить архив не могу. Нет кнопки.
В консоли команда wb-diag-collect отсутствует. При попытке установить пакет с этой утилитой выскакивает ошибка.
Может мне попробовать сделать сброс настроек до заводских?
Ну так сам файл и покажите, явно ведь что ошибка в нем.
Какие пакеты “битые”? Устраните их, тогда можно поставить.
Вот содержимое
/etc/wb-mqtt-db.conf
{
"groups": {
"all": {
"channels" : [
"/devices/nl1s011-1/controls/+",
"/devices/nl1s011-2/controls/+"],
"values" : 10000,
"values_total" : 100000,
"min_interval" : 120,
"min_unchanged_interval" : 1200
}
},
"database" : "/var/lib/wirenboard/db/data.db"
}
Подскажите пожалуйста как починить битые пакеты.
Полагаю, приведенное содержимое файла конфигурации содержит ошибки. Попробуйте очистить файл настроек и скопировать настройки по умолчанию:
{
"debug": false,
"database" : "/var/lib/wirenboard/db/data.db",
"groups": [
{
"name": "all",
"channels" : ["+/+"],
"values" : 10000,
"values_total" : 100000,
"min_interval" : 120,
"min_unchanged_interval" : 1200
}
]
}
Отлично!
После смены конфигурации ошибка пропала.
Спасибо за помощь.
Одно лишь непонятно почему в логах нет сообщений об ошибках к конфиге?
Я бы не дергал вас и разобрался с проблемой гораздо быстрее.
Ошибки в логе должны быть, хоть и в WB5 должен быть установлен достаточно старый пакет.
Можно проверить, остановив сервис и запустив сервис вручную, когда в файле конфигурации ошибка. На актуальной версии это будет так:
root@wirenboard-ATHXPBSP-PLC1:/$wb-mqtt-db -d3
MQTT broker localhost:1883
Config file /etc/wb-mqtt-db.conf
<3>ERROR: Failed to parse JSON /etc/wb-mqtt-db.conf:* Line 14, Column 5
Missing ',' or '}' in object declaration