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

[➕ Feature]: Alert quality widgets for a dashboard #1779

Closed
Matvey-Kuk opened this issue Sep 1, 2024 · 21 comments · Fixed by #1977
Closed

[➕ Feature]: Alert quality widgets for a dashboard #1779

Matvey-Kuk opened this issue Sep 1, 2024 · 21 comments · Fixed by #1977
Assignees
Labels

Comments

@Matvey-Kuk
Copy link
Contributor

Users connect a lot of providers for Keep, and we should provide some analytics about the quality of events coming out of those providers.

I propose to add a few widgets, and an auto-provisioned dashboard called "Alert quality".

Imagine a use-case when users wants to make sure that all alert providers provide "severity", "department", "product" and "affected_customer" from the sources. This dashboard should help them.

Widgets:

  • A table with a per-provider alert quality. Rows: connected providers. Columns: provider name, amount of alerts received, % of alerts correlated to incidents, % of alerts having a "field" filled. Where field is a configurable set of fields.
  • % of alerts correlated to incidents
  • % of alerts having a "field" filled
@Matvey-Kuk Matvey-Kuk added the Feature A new feature label Sep 1, 2024
@Matvey-Kuk
Copy link
Contributor Author

/bounty 200

Copy link

algora-pbc bot commented Sep 11, 2024

💎 $200 bounty • Keep (YC W23)

Steps to solve:

  1. Start working: Comment /attempt #1779 with your implementation plan
  2. Submit work: Create a pull request including /claim #1779 in the PR body to claim the bounty
  3. Receive payment: 100% of the bounty is received 2-5 days post-reward. Make sure you are eligible for payouts

Thank you for contributing to keephq/keep!

Add a bountyShare on socials

Attempt Started (GMT+0) Solution
🟢 @vikashsprem Sep 11, 2024, 9:15:28 AM #1977

@vikashsprem
Copy link
Contributor

vikashsprem commented Sep 11, 2024

/attempt #1779

Algora profile Completed bounties Tech Active attempts Options
@vikashsprem 1 bounty from 1 project
TypeScript, JavaScript,
HTML & more
Cancel attempt

@vikashsprem
Copy link
Contributor

vikashsprem commented Sep 11, 2024

@Matvey-Kuk Could you pls assign me? I will start working on it.

@Matvey-Kuk
Copy link
Contributor Author

@vikashsprem absolutely! Please keep us updated on the progress :)

@rajesh-jonnalagadda
Copy link
Contributor

@vikashsprem I would like to collaborate with you if that works for you. Please let me know how I can assist.

@vikashsprem
Copy link
Contributor

@Matvey-Kuk should I add the "Alert Quality" dashboard as a sub-option under one of the Alerts in the sidebar?

Is the widget that should look like this (A rough overview):

Alert Quality Dashboard

Provider Name Alerts Received % Alerts Correlated to Incidents % Alerts with "Severity" % Alerts with "Department" % Alerts with "Product" % Alerts with "Affected Customer"
Provider A 1200 85% 95% 90% 88% 92%
Provider B 980 78% 92% 85% 83% 89%
Provider C 450 65% 88% 82% 79% 85%
Provider D 300 72% 91% 87% 84% 90%

@vishalxtyagi
Copy link

@Matvey-Kuk @vikashsprem
I noticed this open issue for the Alert Quality dashboard feature and I'm interested in contributing. Before I start working on it, I wanted to confirm a few things:

  • Is this issue still available for contribution?
  • As vikashsprem has already been assigned, are you open to having another contributor work on this as well? If so, would you prefer collaboration or should I wait to see if vikashsprem needs any assistance?
  • If I am able to contribute, are there any specific guidelines or requirements I should be aware of before starting?

@Matvey-Kuk
Copy link
Contributor Author

@vikashsprem you are absolutely right about the dashboard view :)

@Matvey-Kuk
Copy link
Contributor Author

@vishalxtyagi it's up to @vikashsprem if he is open to the co-contributor :)

Copy link

algora-pbc bot commented Sep 21, 2024

💡 @vikashsprem submitted a pull request that claims the bounty. You can visit your bounty board to reward.

@rajesh-jonnalagadda
Copy link
Contributor

@Matvey-Kuk We need information on this column: "% of alerts with a specified field filled."

Could you clarify where we can find the list of available fields? If possible, please provide the expected fields. Currently, we have implemented it as a filter, allowing users to select fields to add to the table.

Ideally, we should restrict users to selecting only one field, as we are aggregating based on these fields. Allowing multiple fields could be costly in terms of performance.

Screenshot from 2024-09-27 13-04-26

@Matvey-Kuk
Copy link
Contributor Author

@rajeshj11 it's important to let users to configure the required fields because we can't predict which field is important for which customer. I suggest checking the field selector for "Feed". It's getting populated based on the content of present alerts.
Screenshot 2024-09-29 at 11 55 41

@rajesh-jonnalagadda
Copy link
Contributor

rajesh-jonnalagadda commented Sep 29, 2024

@rajeshj11 it's important to let users to configure the required fields because we can't predict which field is important for which customer. I suggest checking the field selector for "Feed". It's getting populated based on the content of present alerts. Screenshot 2024-09-29 at 11 55 41

@Matvey-Kuk @talboren I am a little confused about the approach.

Current Implementation:

  1. We display the total received, alerts to incidents, and severity as default columns, along with a custom column named "alert with {field} %,"
  2. The "alerts with {field} %" column will dynamically update based on the user's field filter selection. To optimize performance and minimize computational load on SQL, users are restricted to selecting only one field at a time.
    Reason:
    Aggregating multiple fields can be resource-intensive, particularly with large datasets.

My question is should continue with the current approach? or do we need different approach

@rajesh-jonnalagadda
Copy link
Contributor

@rajeshj11 it's important to let users to configure the required fields because we can't predict which field is important for which customer. I suggest checking the field selector for "Feed". It's getting populated based on the content of present alerts. Screenshot 2024-09-29 at 11 55 41

ack, will add the other options in the filter

@Matvey-Kuk
Copy link
Contributor Author

Matvey-Kuk commented Sep 29, 2024

Reason: Aggregating multiple fields can be resource-intensive, particularly with large datasets.

Sounds valid! May I ask to add ability to add at least 3? I think 1 will be too limiting.

@rajesh-jonnalagadda
Copy link
Contributor

Reason: Aggregating multiple fields can be resource-intensive, particularly with large datasets.

Sounds valid! May I ask to add ability to add at least 3? I think 1 will be too limiting.

okay

@Matvey-Kuk
Copy link
Contributor Author

Payout for this bounty will be executed via GitHub Sponsors, not via Algora. Please activate https://github.com/sponsors/accounts for your account to receive the payout, sorry for the inconvenience

@vikashsprem
Copy link
Contributor

Payout for this bounty will be executed via GitHub Sponsors, not Algora. Please activate https://github.com/sponsors/accounts for your account to receive the payout, sorry for the inconvenience

@Matvey-Kuk I have enabled sponsor option on my github account.

@Matvey-Kuk
Copy link
Contributor Author

Screenshot 2024-10-21 at 11 22 26 @vikashsprem congrats!

@rajesh-jonnalagadda
Copy link
Contributor

rajesh-jonnalagadda commented Oct 21, 2024

Screenshot 2024-10-21 at 11 22 26 @vikashsprem congrats!

@Matvey-Kuk We have not informed you about the split. Anyhow we will handle it internally. I will note that next, we will inform you upfront.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants