In this section:
This section provides an overview of alarm synchronization using the REST API. For more information about alarm synchronization on the DSC, refer to the Alarm Synchronization.
Alarm synchronization allows all active alarms stored in the Active Trap List on the DSC to be kept in sync with an Element Management System (EMS) or other external client manager, at all times. The synchronization is provided using the REpresentational State Transfer (REST) Application Program Interface (API).
This feature allows the DSC REST API clients to perform the following:
A host must be entered in the Trap Host List to receive an SNMP trap. This can be accomplished through the Web UI (refer to SNMP Configuration) or SNMP if EMS Access is enabled (refer to Configuring Community Directives).
To enable the alarm synchronization on the DSC, refer to the
.Once the alarm synchronization is enabled, the DSC stores all active traps in the Web UI under SNMP > Active Trap List.
For more information about DSC alarms, refer to the
. The Alarms guide describes all events, including alarms, warnings, notifications, clearing events, and Intelligent Platform Management Interface (IPMI) hardware sensor alarms recorded by the DSC Platform and possible troubleshooting actions.The following figure shows an example of the EMS sending requests to the DSC through the REST API and the DSC sending SNMP messages to the EMS.
The REST API handlers will check that the Active Traps attribute and the Single Trap Stream attribute are set for each incoming HTTP request and will return an error in response to the HTTP request if the DSC is not properly configured for this feature.
The HTTP requests coming from EMS with the goal of alarm synchronization are processed by an addition to the DSC REST API - Alarm Sync subsystem.
Alarm Synchronization Architecture Example
If you send an HTTP POST request from the EMS and the network is overloaded, or there are connectivity issues, the EMS may not receive the corresponding DSC SNMP Trap response. To check if your request was successful, you can send another request to the DSC using HTTP GET to confirm changes.
If an alarm is manually cleared through the EMS, it will be removed from the Active Trap List and will not be returned in the HTTP GET response, but will still be visible under the cleared bucket list on the DSC Web UI.
If an alarm was manually cleared on the DSC before the Active Traps attribute was enabled, the corresponding clear notification will not be sent to the EMS after the Active Traps attribute is enabled.
If you require a previously cleared alarm to be sent to the EMS, you must manually restore the alarm from the Web UI (refer to Restoring Alarms), so the DSC can send a new trap notification to the EMS.
The following table lists the REST API commands:
REST API Commands
HTTP Command | Resource URL | Category | Comment |
---|---|---|---|
GET | /mgmt/rest/trap/getAlarmList | Trap Resync | Returns the full list of all the DSC active traps available in the system. |
GET | /mgmt/rest/trap/getAlarmList/{SequenceId} | Trap Resync | Returns a partial list of active traps available in the DSC using parameter SequenceId, which represents the starting trap of the list. |
GET | /mgmt/rest/trap/getAlarmList/{SequenceId}/{count} | Trap Resync | Returns a partial list of the active traps whose size is specified by the countparameter and the starting sequence id specified by the SequenceId parameter. |
GET | /mgmt/rest/trap/getCount | Trap Resync | Returns the sum of CRITICAL, MAJOR, MINOR, and WARNING alarms |
GET | /mgmt/rest/trap/getLastSequenceId | Trap Resync | Returns the last sequence id of trap sent out. |
GET | /mgmt/rest/trap/getTrapDetails/{SequenceId} | Trap Resync | Returns the details of the specified alarm SequenceId. |
POST | /api/config/alarms/current/_operations/state/alarmList | Alarm Acknowledge Alarm Unacknowledge | Sets the current acknowledge state and returns a list of successful, failed and not found alarm ids. |
POST | /api/config/alarms/current/_operations/comment/alarmList | Alarm Comment | Sets the current comment field and returns a list of successful, failed and not found alarm ids. |
POST | /api/config/alarms/clear/_operations/alarmList | Alarm Clear | Removes outstanding alarms and returns a list of successful, failed and not found alarm ids. |
GET | /mgmt/rest/trap/getRollOverNumber | Max Sequence ID | DSC sequence number starts at 1. The max sequence number is 2^31 -1. For example <?xml version="1.0" ?> <currentStatus> <rollOverNumber>2147483647</rollOverNumber> </currentStatus> |
GET | /mgmt/rest/trap/getTrapEngineStatus | Trap Resync | Trap engine status for EMS to ping. The Timestamp of the trap engine activation has to be monitored for change. For example <?xml version="1.0" ?> <currentStatus> <trapEngineBoot>1496709954</trapEngineBoot> </currentStatus> |