Open benakansara opened 7 months ago
Pinging @elastic/obs-ux-management-team (Team:obs-ux-management)
@benakansara let's chat about this and add some more detail to this, re: which places need this
I would vote for refresh instead of auto-refresh.
After implementing this logic, we can remove saving alertStatus in a state on the alert details page, and we can use the refresh logic instead. @benakansara shall we add this as an acceptance criteria for this ticket?
@jasonrhodes Below are some use cases for "Refresh" functionality:
For 1 and 2, auto-refresh would be useful.
If we go with manual refresh, I would imagine, by default we hide "Refresh" button and show it only
This will help to draw user attention that something has updated on the page, so they need to refresh.
I would vote for refresh instead of auto-refresh.
After implementing this logic, we can remove saving alertStatus in a state on the alert details page, and we can use the refresh logic instead. @benakansara shall we add this as an acceptance criteria for this ticket?
The issue with "Mark as untracked" is we have "Active" status very visibly displayed on the page. So user might think that something went wrong and alert is not untracked.
If we go with manual refresh, I would propose to have "Refresh" button appear only after user clicked on "Mark as untracked". If we show the "Refresh" button by default, this may not be clear for user that they need to refresh page after marking alert as untracked.
alternatively, in case of manual refresh, we can keep alertStatus
in state as it helps to reflect the "untracked" status immediately.
The issue with "Mark as untracked" is we have "Active" status very visibly displayed on the page. So user might think that something went wrong and alert is not untracked.
If we go with manual refresh, I would propose to have "Refresh" button appear only after user clicked on "Mark as untracked". If we show the "Refresh" button by default, this may not be clear for user that they need to refresh page after marking alert as untracked.
Sorry, it was not clear in my comment, I didn't mean we don't change the status unless the user clicks refresh, I meant using the refresh logic behind the scene to refresh the whole page instead of saving only alertStatus in the component's state and updating it manually. The reason for it is to not have specific logic for different parts of the page and make sure the whole information on the page is up to date, but I don't have a strong opinion about it, it seemed like a nice opportunity to simplify this logic.
If we go with manual refresh, I would imagine, by default we hide "Refresh" button and show it only
- after user has modified rule parameters and saved rule
- or when user marked alert as untracked
I wouldn't hide the refresh because behind the scenes, by every rule execution the information in AAD will change, so the user might not interact with the page but some information can get out of date due to rule execution.
In general, I am curious to know what @maciejforcone thinks about it, I remember there was an auto-refresh on the SLO list page but eventually, they changed to manual refresh if I am not mistaken. Now they have a search bar there instead. :D
Do you mean refresh the page (independent of whether "Refresh" button is there or not) when rule params are changed, mark as untracked, etc.?
If so, that's also a good option. We need to keep in mind that this will result in reloading or flickering of page without user input.
So we have 3 options: 1) refresh automatically (no UI) 2) add "refresh" button in UI 3) add "auto-refresh" button in UI
Do you mean refresh the page (independent of whether "Refresh" button is there or not) when rule params are changed, mark as untracked, etc.?
If so, that's also a good option. We need to keep in mind that this will result in reloading or flickering of page without user input.
So we have 3 options:
- refresh automatically (no UI)
- add "refresh" button in UI
- add "auto-refresh" button in UI
I mean adding a refresh button in the UI and implementing the logic for that. Then using the same logic behind the scene when someone untracks an alert.
I'm on board with what you both are suggesting here -- feel free to update the ticket description to reflect the direction you all agree on here. We can talk about priority next week, I'll schedule something since it seems like a lot of what's been planned for 8.15 is almost done (great work as usual, everyone!)
I have updated the ticket description.
Add refresh functionality to all Observability alert detail pages.
Use cases
alertStatus
state, however, it can lead to UI inconsistency when switching between Overview and Metadata tabs. In Metadata tab, the status will be stillactive
. We can again solve it withalertStatus
, but once we have refresh, we can consider removingalertStatus
logic.Acceptance Criteria