Project

General

Profile

Feature #26679

Feature #23785: FreeNAS sending SNMP traps/notifications

Add System -> Alerts for configuring alert frequency

Added by Stilez y over 1 year ago. Updated 10 months ago.

Status:
Done
Priority:
No priority
Assignee:
Vladimir Vinogradenko
Category:
Middleware
Target version:
Estimated time:
Severity:
New
Reason for Closing:
Reason for Blocked:
Needs QA:
No
Needs Doc:
No
Needs Merging:
No
Needs Automation:
No
Support Suite Ticket:
n/a
Hardware Configuration:

Description

At the moment, most alert decisions are automatic. FreeNAS, not the user, chooses which matters are notified by email (and I assume, for other alert services).

Problems:

  1. User might want to know some events but cannot avoid being spammed by their own server for events they don't want
  2. User might want to include other events or status info, but cannot, because it's set up as "one set of alerts fits all", there will be alerts that some users want, not available because most users don't.
  3. Alert timing and collation (digests) isn't available (Some status emails might only be wanted as a daily summary, others immediately)
  4. User cannot stipulate that some alerts should be sent one way and others another or multiple ways (For example, daily status emailed to my "not-important" account, but disk failure/SMART issue/restart is emailed to my "priority email", also try to send using my secondary SMTP server in case my primary is down, and also try to alert me using 2 other alert services I have on my phone for emergencies only).
  5. (This is about rationalising the system a bit) - don't have a separate tab for SMTP email config. In principle it's no different than growl or AWS or any other alert service, to the server. Just include email in list of definable services. Keeps the UI simple and consistent!

REQUEST:

1) User defines alert services - ideally including multiple of any of them. This is pretty much as it is now, except includes email in the list of services rather than a separate tab. So you can define multiple email SMTP servers much as you might define multiple gateways for anything else where redundancy is required.

2) New config page "Configure Alerts" (separate from "alert services"). In this page a list of alertable issues is given. Next to each is listed (1) a dropdown of all alert services with an "add" button and a list of services active for that issue, (2) Whether to alert immediately, or in a daily digest.

Example:

  1. In "Alert Services", the user defines a primary and fallback SMTP server, and a AWS service (for example)
  2. In "Configure Alerts", the user scrolls to "Disk failure/SMART alert" and adds both SMTP's and the GROWL service, with immediate notification. Then does the same for "Reboot-unexpected", but leaves "Reboot-user requested" unnotified. Finally scrolls down to "SCRUB completed" and adds just the primary email to it (to avoid double emails), and specifies to include it in the daily digest.
  3. Done.

That seems a much more useful and flexcible way of making alerts granular, while keeping it very similar to what's already there and keeping it very simple.
Most users who have used online forums will recognise this as a common way to handle alerts (notify me by XXXX YYYY when I get a comment, thanked etc). So it's very familiar. But a lot more helpful.

Please? :)


Related issues

Related to FreeNAS - Feature #26693: Choice of alert systems not ideal for many users - add GSM and other options.Closed
Related to FreeNAS - Bug #8071: When replication fails and e-mail reporting is set, an e-mail about failed replication is sent every minuteClosed: Not Applicable2015-02-17
Related to FreeNAS - Feature #30174: Angular UI for new alerts systemDone
Related to FreeNAS - Bug #28587: Mattermost alerter does not workClosed2018-02-19
Related to FreeNAS - Bug #35161: Add Alert Severity and allow configuration on where to sendClosed
Has duplicate FreeNAS - Bug #26200: Time stamp on warnings is not correctClosed: Duplicate2017-10-15

Associated revisions

Revision c50d64fb (diff)
Added by Vladimir Vinogradenko over 1 year ago

feat(alert): Proper alert levels

Ticket: #26679

Revision 4584c37e (diff)
Added by Vladimir Vinogradenko over 1 year ago

feat(alert): CSS: rename consulalert to alertservice

Ticket: #26679

Revision 3bc2fb67 (diff)
Added by Vladimir Vinogradenko over 1 year ago

feat(alert): Get rid of CONSULALERT_TYPES in choices.py, they will be read from middleware

Ticket: #26679

Revision f42e6446 (diff)
Added by Vladimir Vinogradenko over 1 year ago

feat(alert): Remove legacy alert daemon

Ticket: #26679

Revision a9476b77 (diff)
Added by Vladimir Vinogradenko over 1 year ago

middleware.utils.load_modules, middleware.utils.load_classes

Ticket: #26679

Revision d5e89dae (diff)
Added by Vladimir Vinogradenko over 1 year ago

feat(middleware): system._system_serial

Ticket: #26679

Revision e6ea1496 (diff)
Added by Vladimir Vinogradenko over 1 year ago

fix(gui): Properly pass DictField from MiddlewareModelForm

Ticket: #26679

Revision ce8ccf80 (diff)
Added by Vladimir Vinogradenko over 1 year ago

fix(gui): remove consul_fake_alert view

Ticket: #26679

Revision 1471eeeb (diff)
Added by Vladimir Vinogradenko over 1 year ago

feat(middleware): New alert system plugin

Ticket: #26679

Revision ef82c63a (diff)
Added by Vladimir Vinogradenko over 1 year ago

Remove legacy alert resources. Dismiss alerts through middleware

Ticket: #26679

Revision b4066990 (diff)
Added by Vladimir Vinogradenko over 1 year ago

New alert views

Ticket: #26679

Revision 7f2954c6 (diff)
Added by Vladimir Vinogradenko over 1 year ago

Remove legacy alertmods

Ticket: #26679

Revision a29273a3 (diff)
Added by Vladimir Vinogradenko over 1 year ago

New alerts models & forms

Ticket: #26679

Revision 1666af43 (diff)
Added by Vladimir Vinogradenko over 1 year ago

New alerts sources and services

Ticket: #26679

Revision 3777a93a (diff)
Added by Vladimir Vinogradenko over 1 year ago

Fix Flake8 F403 and F405

Ticket: #26679

Revision 289c5e21 (diff)
Added by Vladimir Vinogradenko over 1 year ago

fix(alert): Only call alert_service.send if there are any alerts

Ticket: #26679

Revision f8947e52 (diff)
Added by Vladimir Vinogradenko over 1 year ago

OpsGenie, Slack

Ticket: #26679

Revision a686448a (diff)
Added by Vladimir Vinogradenko over 1 year ago

ProThreadedAlertService for alert services that support resolving alerts

Ticket: #26679

Revision e3532a34 (diff)
Added by Vladimir Vinogradenko over 1 year ago

PagerDuty and VictorOps alert services

Ticket: #26679

Revision c737bf70 (diff)
Added by Vladimir Vinogradenko about 1 year ago

Rebase migrations

Ticket: #26679

Revision 97fe4eb0 (diff)
Added by Vladimir Vinogradenko about 1 year ago

HipChat and InfluxDB alert services

Ticket: #26679

Revision e9c6aa16 (diff)
Added by Vladimir Vinogradenko about 1 year ago

databases/py-influxdb

Ticket: #26679

Revision f48efe62 (diff)
Added by Vladimir Vinogradenko about 1 year ago

Mattermost alert service

Ticket: #26679

Revision 2aaa6ec8 (diff)
Added by Vladimir Vinogradenko about 1 year ago

databases/py-influxdb (#85)

Ticket: #26679

Revision da841841 (diff)
Added by Dru Lavigne 10 months ago

Doc System -> Alerts.
Ticket: #26679

Revision 49a04710 (diff)
Added by Dru Lavigne 10 months ago

Doc System -> Alerts.
Ticket: #26679

History

#1 Updated by Dru Lavigne over 1 year ago

  • Assignee changed from Release Council to William Grzybowski

William: please pass to Marcelo if a middle piece is not needed.

#2 Updated by Stilez y over 1 year ago

Also related: issue #26693 ("Choice of alert systems") - maybe the two would go well together?

#3 Updated by Dru Lavigne over 1 year ago

  • Related to Feature #26693: Choice of alert systems not ideal for many users - add GSM and other options. added

#4 Updated by William Grzybowski over 1 year ago

  • Category changed from GUI (new) to Middleware
  • Assignee changed from William Grzybowski to Vladimir Vinogradenko

Vladimir has some ideas on this.

Vladimir, please feel free to close this as a dup if you have a ticket about it yet.

#5 Updated by Vladimir Vinogradenko over 1 year ago

  • Status changed from Unscreened to Screened
  • Parent task set to #23785
  • Needs QA changed from Yes to No

#6 Updated by Bartosz Prokop over 1 year ago

  • Related to Bug #8071: When replication fails and e-mail reporting is set, an e-mail about failed replication is sent every minute added

#7 Updated by William Grzybowski over 1 year ago

  • Target version set to 11.2-BETA1

#8 Updated by Vladimir Vinogradenko over 1 year ago

  • Has duplicate Bug #26200: Time stamp on warnings is not correct added

#9 Updated by Vladimir Vinogradenko over 1 year ago

  • Status changed from Screened to Fix In Progress

#10 Updated by Dru Lavigne about 1 year ago

  • Status changed from Fix In Progress to In Progress
  • Reason for Blocked set to Need verification

Vlad: is there any additional work to do here or can this be marked as Done?

#11 Updated by Warren Block about 1 year ago

Some ideas for an updated alert system:

Be able to get a list of all possible alerts, along with what causes
them (a text description), and which alert services are currently set
to send notifications for that alert.

Alerts should have a severity ranging from informational to very high.
For example, critical alerts might go to one group of admins, warnings
to another, informational alerts like TrueNAS support alerts could go to
another.

It would be useful for alerts to have a short name (say 8-16 characters)
that could be filtered in logs, like DISK-SPACE, DISK-DEGRADED, and so
on.

Email should be just another type of alert service.

There should be a default alert service used for notifications. Alerts
that don't have a specific alert service set are sent to the default.

#12 Updated by Vladimir Vinogradenko about 1 year ago

  • Status changed from In Progress to Done

#13 Updated by Dru Lavigne about 1 year ago

#14 Updated by Dru Lavigne about 1 year ago

  • Subject changed from Add granularity for alerts, so users can select which alerts matter and which service(s) to send each type on to Add granularity for alerts so users can select which alerts matter and which service(s) to send each type to
  • Needs QA changed from No to Yes
  • Needs Merging changed from Yes to No

#15 Updated by Dru Lavigne about 1 year ago

  • Subject changed from Add granularity for alerts so users can select which alerts matter and which service(s) to send each type to to Add granularity for alerts so users can select which alerts matter and which services to send each type to

#16 Updated by Dru Lavigne about 1 year ago

  • Related to Bug #28587: Mattermost alerter does not work added

#17 Updated by Dru Lavigne 12 months ago

  • Status changed from Done to Ready for Testing

#18 Updated by Michael Reynolds 10 months ago

  • Severity set to New

We now have
System -> Alert Settings
This section allows Alerts to be configured to send:
Immediately
Hourly
Daily
Never

System -> Alert Services -> + (Add Alert Service)
This allows users to create a custom Alert and configure how and where that is sent

I think this satisfies everything in this ticket except 1 suggestion by Warren:

Alerts should have a severity ranging from informational to very high.
For example, critical alerts might go to one group of admins, warnings
to another, informational alerts like TrueNAS support alerts could go to
another.

If setting a priority type and configuring who gets what severity alerts is possible, I don't see it.

#19 Updated by Michael Reynolds 10 months ago

  • Status changed from Ready for Testing to Passed Testing
  • Reason for Blocked deleted (Need verification)
  • Needs QA changed from Yes to No

Marking as passed based on my previous note

#20 Updated by Dru Lavigne 10 months ago

  • Related to Bug #35161: Add Alert Severity and allow configuration on where to send added

#21 Updated by Dru Lavigne 10 months ago

  • Subject changed from Add granularity for alerts so users can select which alerts matter and which services to send each type to to Add System -> Alerts for configuring alert frequency

#22 Updated by Dru Lavigne 10 months ago

  • Status changed from Passed Testing to Done
  • Needs Doc changed from Yes to No

Also available in: Atom PDF