Notification Types

EFA notifies the subscribers on the following event or alert types:

  1. DEVICE_EVENTS - Syslog or RASlog events generated by the devices
  2. APP_EVENTS - Task or user events that are generated by EFA application
  3. APP_ALERTS – Alerts that are generated by EFA application. Prior to EFA 3.1.0, alerts were in non-standard or legacy format. EFA-3.1.0 introduces fault-alerts which has more alert specific data.

By default, the subscribers receive all the event or alert types and users have the option to configure the filters during registration of subscribers. The filter option is applicable to both HTTPS and RELP subscribers.

Note

Note

  1. Existing subscribers (registered in EFA 3.0.0 or earlier) receive all notification alert or event types when upgraded to EFA 3.1.0.
  2. For modifying the filter values, users must unsubscribe or delete and re-add it. EFA 3.1.0 does not support updating filter value.
  3. Webhook subscribers receive only fault-alerts introduced in EFA 3.1.0.
  4. Syslog subscribers receive either legacy alerts or fault-alerts based on the RFC5424 flag.

CLI Changes

(efa:root)EFA-Server# efa notification subscribers add-https --help
Register a new https webhook subscriber to the notification service.

Usage:
  efa notification subscribers add-https [flags]

Flags:
      --url string        HTTPS URL for the webhook. (Required)
      --username string   Username for basic auth. (Required)
      --password string   Password for basic auth. (Optional, will prompt if missing) 
                          (default "<prompt>")
      --insecure          Perform insecure SSL connection and transfers. (Optional)
      --cacert string     Local path to the cacert pem file for SSL verification.
                          (Optional, required if not insecure)
      --filter strings    Comma separated filter values. Possible values are
                          “DEVICE_EVENTS” - RAS/syslog events from devices, 
                          “APP_ALERTS” - fault alerts from application, 
                          “APP_EVENTS” - task events from application. If no 
                          filters are provided it means all types. 
                          E.g. --filters DEVICE_EVENTS,APP_ALERTS,APP_EVENTS. (Optional)
      --conn-timeout int  Timeout to open a connection to the server (Optional) (default 10)
  --- Time Elapsed: 2.9506ms ---



(efa:root)EFA-Server# efa notification subscribers add-syslog-relp --help
Register a new RELP syslog subscriber to the notification service.

Usage:
  efa notification subscribers add-syslog-relp [flags]

Flags:
      --address string     Address for syslog server in the format host:port (Required),
                           Default port: 514
      --insecure           Perform insecure SSL connection and transfers. (Optional)
      --cacert string      Local path to the cacert pem file for SSL verification.
                           (Optional, required if not insecure)
      --conn-timeout int   Timeout to open a connection to the server (Optional) (default 10)
      --filter strings     Comma separated filter values. Possible values are “DEVICE_EVENTS”
                           - RAS/syslog events from devices, “APP_ALERTS” - fault alerts from
                           application, “APP_EVENTS” - task events from application. If no 
                           filters are provided it means all types. E.g. --filters DEVICE_EVENTS,
                           APP_ALERTS,APP_EVENTS. (Optional)
      --rfc5424            Enable RFC5424 message format for syslog subscribers (Optional) 
                           (default: non-RFC5424 format)
  --- Time Elapsed: 2.581857ms ---

Example: To enable webhook subscriber with only APP_ALERTS

#efa notification subscribers add-https --url https://127.0.0.1:5000 --username jarvis --password vision --insecure --filter APP_ALERTS
Successfully registered subscriber.

+-----------+-------------------------------------------------------+
| attribute | value                                                 |
+-----------+-------------------------------------------------------+
| id        | 18                                                    |
+-----------+-------------------------------------------------------+
| handler   | http                                                  |
+-----------+-------------------------------------------------------+
| endpoint  | https://127.0.0.1:5000                                |
+-----------+-------------------------------------------------------+
| config    | {"cacert":"","filters":["APP_ALERTS"],"insecure":true,|
|           | "password":"vision","username":"jarvis"}              |                                                     |
+-----------+-------------------------------------------------------+
Notification Subscriber ID=18
--- Time Elapsed: 2.148580068s ---

Example: To enable rsyslog subscriber with only APP_ALERTS and DEVICE_EVENTS

#efa notification subscribers add-syslog-relp --address 127.0.0.1:1601 --insecure --filter APP_ALERTS,DEVICE_EVENTS
Successfully registered subscriber.

+-----------+--------------------------------------------------------+
| attribute | value                                                  |
+-----------+--------------------------------------------------------+
| id        | 19                                                     |
+-----------+--------------------------------------------------------+
| handler   | relp                                                   |
+-----------+--------------------------------------------------------+
| endpoint  | 127.0.0.1:1601                                         |
+-----------+--------------------------------------------------------+
| config    | {"cacert":"","conn-timeout":10,"filters":["APP_ALERTS",|
|           | "DEVICE_EVENTS"],"insecure":true}                      |
+-----------+--------------------------------------------------------+
Notification Subscriber ID=19
--- Time Elapsed: 2.172557257s ---

Example: To enable all notification types on rsyslog subscriber

#efa notification subscribers add-syslog-relp --address 127.0.0.1:1601 --insecure 
Successfully registered subscriber.

+-----------+--------------------------------------------------------------+
| attribute | value                                                        |
+-----------+--------------------------------------------------------------+
| id        | 20                                                           |
+-----------+--------------------------------------------------------------+
| handler   | relp                                                         |
+-----------+--------------------------------------------------------------+
| endpoint  | 127.0.0.1:1601                                               |
+-----------+--------------------------------------------------------------+
| config    | {"cacert":"","conn-timeout":10,"filters":[],"insecure":true} |
+-----------+--------------------------------------------------------------+
Notification Subscriber ID=20
--- Time Elapsed: 2.042797885s ---