Alarm Management Release notes
Release Janis:
Readiness status: Call for Comments Ballot #2. Work in progress and is subject to change.
Summary:
- Updated Alarm model after Call for Comments Ballot #1
List of changes in the API:
alarmManagement.api.yaml:
Paths & Endpoints
/alarm (GET)
- Response Schema:
- Was: returns
Alarm_Find - Now: returns
Alarm_Common
- Was: returns
- Schema References:
- Query parameter schemas now use
$reffor enums (e.g.,AlarmType,PerceivedSeverity,PlannedOutageIndicator,AlarmState), rather than inline enum definitions.
- Query parameter schemas now use
/hub (POST) and /hub/{id}
- Subscription Schema:
- Was:
AlarmSubscriptionInputandAlarmSubscription - Now:
EventSubscriptionInputandEventSubscription - Event subscription input/output objects renamed and extended to allow event filtering.
- Was:
Schema & Components Changes
Alarm_Findtype removed, replaced by direct use ofAlarm_Common.AlarmSubscription/AlarmSubscriptionInputrenamed toEventSubscription/EventSubscriptionInput, and now supports multi-event filtering.AlarmedObjectRef:@referredTypeis now a required field.
New/Refined Schemas
- Enums as Components:
- Inline enums replaced with reusable schemas:
AlarmType,AlarmState,PlannedOutageIndicator,ProbableCause.
- Inline enums replaced with reusable schemas:
ServiceRef:- Now requires both
hrefandidfields.
- Now requires both
Alarm_Common
alarmRaisedTimeis now a required field.serviceAffectingis now required.- Enum fields use
$refinstead of inline definitions.
Alarm
alarmedObjectandisRootCauseare now required.probableCausenow referencesProbableCause.
EventSubscriptionInput
querynow allows subscribing to multiple event types, not just one.- Enhanced documentation for event subscription syntax.
New Error Schema
Error409introduced for HTTP 409 (Conflict).
Error Schema Updates
Error422codes streamlined; some codes removed for clarity.
alarmNotification.api.yaml:
Paths & Endpoints
-
Event Endpoints Expanded:
- introduced four event-specific endpoints:
/listener/alarmCreateEvent(create alarm notifications)/listener/alarmDeleteEvent(delete alarm notifications)/listener/alarmAttributeValueChangeEvent(attribute value change notifications)/listener/alarmStateChangeEvent(state change notifications)
- Each endpoint uses a dedicated operationId (e.g.,
alarmCreateEvent,alarmDeleteEvent, etc.).
- introduced four event-specific endpoints:
-
Request Body Schema:
- A new
AlarmEventwrapper (with type and payload). Each event type is modeled as a specific event object, but the endpoint request uses the genericAlarmEvent.
- A new
Schema & Components Changes
-
New Event Classes Introduced:
AlarmEvent,AlarmAttributeValueChangeEvent,AlarmCreateEvent,AlarmDeleteEvent,AlarmStateChangeEvent- All inherit from
Event - All use a payload object,
AlarmEventPayload, which contains the actualAlarmobject.
- All inherit from
-
Event Type Distinction:
- Each event type is distinguished by an explicit
eventTypefield (enum).
- Each event type is distinguished by an explicit
-
AlarmEventPayload:
- Wraps the
alarmobject.
- Wraps the
Alarm Object Changes
-
Required Fields:
isRootCauseis now required forAlarm.- In
AlarmedObjectRef, bothidand@referredTypeare required.
-
Probable Cause Enum:
- Now a standalone schema and referenced in
Alarm.
- Now a standalone schema and referenced in
-
PerceivedSeverity, PlannedOutageIndicator:
- Now referenced as reusable schemas.
Event Base Class
- Event:
- New base class for all event types, with fields:
eventId,eventTime,eventType, andevent.
- New base class for all event types, with fields:
Release Irene:
Readiness status: Work in progress and is subject to change. Ready for CfC#1.
First release of this API.
