System status icon not up to date in UI
In Cloudify 4.4 (early 2018 afair) we removed periodic status polling (ref.: ), so right now status is fetched only on login or page reload (not page switch through left navigation bar). The reason behind that change was to decrease network load. We increased polling timeouts in few widgets, maintenance polling was increased and status poller was removed.
Status - since that time - can be refreshed on demand by hovering on status icon or clicking refresh icon inside status popup. It means that icon showing the state of the manager (yellow, green, red, gray depends on the state) can be misleading.
It is even more confusing when you have Cluster Status widget opened as it can show different status than the icon on top. See in screenshot:
simple (status icon won't be refreshed automatically, but will be in sync with Cluster Status widget)
data fetch triggered by Cluster Status widget will update global state of Cloudify UI where cluster status is stored, that way status icon will be in sync with widget
full (status icon will be refreshed periodically and will be in sync with Cluster Status widget)
one of the following options:
bring back periodical cluster status fetch using summary option, suggested by Tal, to minimize network load and fetch full cluster status (as it is right now to get info about services status) only if status icon is hovered or if refresh status icon is clicked in the status popup
enhance maintenance endpoint or create new endpoint in Cloudify REST API to provide both - cluster status summary + maintenance status
(this option would be the most optimal from the network load perspective as we already fetch maintenance status periodically)
after completed fetch and if Cluster Status widget is on the current page, triggers full cluster status fetch to update
Steps to Reproduce
OS (CLI), HA cluster, cloud provider
Steps to reproduce:
Why Propose Close?
Yeah, that would also be an option, that sounds as kind of websocket-like solution. I'll investigate more tomorrow and try to implement one of the approaches we discussed.
there is also another possible approach:
periodically query the full cluster status and store it (raw) in the UI db (with timestamp & expiration)
both the cluster widget & icon should obtain the data from the UI db (and validate its still valid by timestamp
This way icon & widget are in sync