Всем привет, столкнулся с интересной ситуацией и уже весь мозг сломал, может кто натыкался на подобное.
Ситуация:
есть item получающий на вход json
Пример (выдержка из lastdata)
набор данных А 2021-07-09 11:03:21 {"as":4,"ac":2,"cp":68}
набор данных Б 2021-07-09 10:58:21 {"as":0,"ac":0,"cp":63}
набор данных В 2021-07-09 10:53:20 {"as":0,"ac":0,"cp":60}
есть несколько зависимых item в которых этот json разбирается
создал триггер который должен сработать в период с 9 до 23 при условии что as=0 и ac>0
last(/A/as)=0 and last(/A/ac)>0 and (time()>090000 and time()<230000)
Словил два странных бага:
1. Триггер срабатывает если as и ac равны 0
2. Триггер срабатывает в момент получения данных из набора А в примере
Т.е. в тексте триггера (в уведомлении) видно следующее
As 0 Ac 0 {"as":0,"ac":0,"cp":60}
либо
As 4 Ac 2 {"as":4,"ac":2,"cp":68}
Т.е. приходит Alert и сразу за ним OK с длительностью проблемы 0s.
Как-то случайно поборол сработку на 0 и 0, пока вроде не приходили больше, но вторая проблема осталась. Экспериментально выяснил что As 4 Ac 2 {"as":4,"ac":2,"cp":68} срабатывает именно тогда когда в наборе данных as и ac меняются с 0 на другие значения.
Т.е. есть ощущение что на момент поверки условия он берет часть данных из набора Б а часть данных из набора А как такое может быть понять не могу.
Сталкивался ли кто-то с подобным или может кто ткнет носом что я не так настроил?
Ситуация:
есть item получающий на вход json
Пример (выдержка из lastdata)
набор данных А 2021-07-09 11:03:21 {"as":4,"ac":2,"cp":68}
набор данных Б 2021-07-09 10:58:21 {"as":0,"ac":0,"cp":63}
набор данных В 2021-07-09 10:53:20 {"as":0,"ac":0,"cp":60}
есть несколько зависимых item в которых этот json разбирается
создал триггер который должен сработать в период с 9 до 23 при условии что as=0 и ac>0
last(/A/as)=0 and last(/A/ac)>0 and (time()>090000 and time()<230000)
Словил два странных бага:
1. Триггер срабатывает если as и ac равны 0
2. Триггер срабатывает в момент получения данных из набора А в примере
Т.е. в тексте триггера (в уведомлении) видно следующее
As 0 Ac 0 {"as":0,"ac":0,"cp":60}
либо
As 4 Ac 2 {"as":4,"ac":2,"cp":68}
Т.е. приходит Alert и сразу за ним OK с длительностью проблемы 0s.
Как-то случайно поборол сработку на 0 и 0, пока вроде не приходили больше, но вторая проблема осталась. Экспериментально выяснил что As 4 Ac 2 {"as":4,"ac":2,"cp":68} срабатывает именно тогда когда в наборе данных as и ac меняются с 0 на другие значения.
Т.е. есть ощущение что на момент поверки условия он берет часть данных из набора Б а часть данных из набора А как такое может быть понять не могу.
Сталкивался ли кто-то с подобным или может кто ткнет носом что я не так настроил?
Comment