Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Direct paging of users #823

Closed
Matvey-Kuk opened this issue Nov 10, 2022 · 11 comments · Fixed by #1098 or #1154
Closed

Direct paging of users #823

Matvey-Kuk opened this issue Nov 10, 2022 · 11 comments · Fixed by #1098 or #1154
Assignees
Labels
feature request New feature or request

Comments

@Matvey-Kuk
Copy link
Contributor

Matvey-Kuk commented Nov 10, 2022

Today:

  • we could run AG manually using slack and "/oncall"
  • we could "invite" to specific AG in Slack.

I want us to be able to start new AG with Escalation on a specific person using Web, Slack, TG...

Tricky part:

  • We want OnCall to help users to avoid "bad practices".
  • Tagging specific user without on-call schedule is a bad practice.
  • We want to make OnCall easy tagging users who are on-call and "hard" tagging users who are not.

I see it this way (Web):

  • I want alongside with user picker to be a schedules picker at the very beginning.
  • User picker + some message "why do I escalate to this person" (because we issue new AG.
  • If user is in on-call rotations & is on-call now: we're ok with tagging.
  • If user is in on-call rotations & is not on-call now: we say "this person is in schedule X, but not on-call now. Person B is on-call, do you want to tag him?".
  • If user is not in on-call rotations & inside working hours: we tag but suggest using on-call schedules.
  • If user is in on-call rotations & outside of working hours: we tag but complain a lot.
@Matvey-Kuk
Copy link
Contributor Author

@vadimkerr I asked @matiasb to take this one to give you some more time to work on mobile API :)

@joeyorlando joeyorlando removed their assignment Dec 14, 2022
@iskhakov
Copy link
Contributor

iskhakov commented Jan 2, 2023

  • Consider adding option to escalate to next (other) escalation step from escalation chain
  • @raphael-batte can you please add some description for @matiasb
  • @raphael-batte can you add designs for slack and messengers
  • is there way to choose between critical and default notifications when paging users

@iskhakov
Copy link
Contributor

iskhakov commented Jan 3, 2023

@raphael-batte / @matiasb / @iskhakov call summary

  • User list prioritisation is not going to be implemented in the first version
  • User is checked for (oncall/working hours/set escalation rules) in the popup after the user is selected
  • when selecting user to escalate use same component as in esclation chains user select
  • when we hover over user being escalated we show tooltip with their notification policies (default or important)
  • we can escalate to multiple users at the same time
  • title can be edited by user when the escalation is created

@raphael-batte
Copy link

Multiple users UX/UI

  • when we add multiple users all actions will be user-by-user
  • we provide 2 users and additional label with counter at default component
    image
  • we have combined list view when component expands by click
    image

@raphael-batte
Copy link

Modal

Image

@vstpme
Copy link
Member

vstpme commented Jan 6, 2023

Notes from our call with @matiasb:

Seems like implementing the backend for paging users and schedules should be pretty straightforward (not escalation chains though, see the first question below).

Questions:

  • Do we want to support paging escalation chains in the first version? This could be tricky because there's a lot of existing logic that assumes only one escalation chain can be associated with a given alert group. So while it should be pretty easy to implement direct paging for a new alert group, it would require a lot more work to support this for existing alert groups.
  • Do we want to implement direct paging for Slack, MS Teams and Telegram in the first version? This could be tricky and require some workarounds because of UI system differences for different messengers.

@matiasb feel free to comment in case I missed something 🙂

@matiasb
Copy link
Contributor

matiasb commented Jan 6, 2023

Adding a few more notes from the previous discussion:

  • Right now we allow to associate one escalation chain to an alert group (via channel filter), and because of how we manage snapshots/alert plan, the simple existing way to set an escalation chain for a page will be during creation (ie. adding more than one escalation chain, or setting it up after escalation is created, would be tricky)
  • Enabling the "escalate to" option to any alert group should be possible, and it could eventually replace the existing invite option; makes sense?
  • When adding support for messengers, besides considering their different limitations, we will need organization/team information (fyi, when designing the UX/UI)
  • Since we are building more and more on top of working hours (schedules, paging), I think we should expose this in the user profile somehow.

@raphael-batte
Copy link

@vstpme
Copy link
Member

vstpme commented Jan 16, 2023

Here's a PR with backend and API for direct paging: #1098

vstpme added a commit that referenced this issue Jan 19, 2023
# What this PR does
Adds an ability to page an escalation chain for a newly created direct
paging alert group using the internal API. Also [adds a forgotten
migration](32fc44e)
related to the direct paging backend.
Related to #823

## Checklist

- [x] Tests updated
- [ ] Documentation added (N/A)
- [ ] `CHANGELOG.md` updated (N/A)
@matiasb matiasb reopened this Jan 20, 2023
vstpme added a commit that referenced this issue Jan 20, 2023
# What this PR does
Hide direct paging integrations from the web UI. Related to
#823

## Checklist

- [x] Tests updated
- [ ] Documentation added (N/A)
- [ ] `CHANGELOG.md` updated (N/A)
matiasb added a commit that referenced this issue Jan 25, 2023
vstpme added a commit that referenced this issue Jan 30, 2023
# What this PR does
Make direct paging internal API endpoint return an alert group ID.

## Which issue(s) this PR fixes
Related to #823

## Checklist

- [x] Tests updated
@Ukochka Ukochka removed their assignment Feb 9, 2023
brojd pushed a commit that referenced this issue Sep 18, 2024
# What this PR does
Hide direct paging integrations from the web UI. Related to
#823

## Checklist

- [x] Tests updated
- [ ] Documentation added (N/A)
- [ ] `CHANGELOG.md` updated (N/A)
brojd pushed a commit that referenced this issue Sep 18, 2024
# What this PR does

Adds direct user paging

## Which issue(s) this PR fixes

#823

## Checklist

- [ ] Tests updated
- [ ] Documentation added (documentation will be added later)
- [x] `CHANGELOG.md` updated

---------

Co-authored-by: Maxim <maxim.mordasov@grafana.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request New feature or request
Projects
None yet
8 participants