As a result of time spent within stx-fault, there are API reference content gaps: - "The API document should be modified to match the description returned from API query": changed both the name of the desciption. - "Wrong "links" reference: changed to existing StarlingX stx-fault API reference. - Additional: Remove <U+200B> character. More Information: - [Starlingx-discuss] API requests: stx-fault [0] - Etherpad StarlingX APIs Review [1] [0] http://lists.starlingx.io/pipermail/starlingx-discuss/2018-December/002150.html [1] https://etherpad.openstack.org/p/stx-apis Story: 2004877 Task: 29153 Change-Id: Ifb3da9492b74b4ecf7be265294af5d2e604d56e5 Signed-off-by: Abraham Arce <abraham.arce.moreno@intel.com>
28 KiB
Fault Management API v1
The API supports alarm and event collection of the cloud platform itself.
The typical port used for the FM REST API is 18002. However, proper technique would be to look up the FM service endpoint in Keystone.
API versions
Lists information about Fault Management API versions
Normal response codes
200, 300
Error response codes
computeFault (400, 500, ...), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
{
"default_version":{
"id":"v1",
"links":[
{
"href":"http://128.224.150.54:18002/v1/",
"rel":"self"
}
]
},
"versions":[
{
"id":"v1",
"links":[
{
"href":"http://128.224.150.54:18002/v1/",
"rel":"self"
}
]
}
],
"description":"Fault Management is an OpenStack project which provides REST API services for alarms and logs.",
"name":"Fault Management API"
}
This operation does not accept a request body.
Shows details for Fault Management API v1
Normal response codes
200, 203
Error response codes
computeFault (400, 500, ...), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
{
"media_types": [
{
"base": "application/json",
"type": "application/vnd.openstack.fm.v1+json"
}
],
"links": [
{
"href": "http://127.168.204.2:18002/v1/",
"rel": "self"
},
{
"href": "https://docs.starlingx.io/api-ref/stx-fault/index.html",
"type": "text/html",
"rel": "describedby"
}
],
"event_log": [
{
"href": "http://127.168.204.2:18002/v1/event_log/",
"rel": "self"
},
{
"href": "http://127.168.204.2:18002/event_log/",
"rel": "bookmark"
}
],
"alarms": [
{
"href": "http://127.168.204.2:18002/v1/alarms/",
"rel": "self"
},
{
"href": "http://127.168.204.2:18002/alarms/",
"rel": "bookmark"
}
],
"event_suppression": [
{
"href": "http://127.168.204.2:18002/v1/event_suppression/",
"rel": "self"
},
{
"href": "http://127.168.204.2:18002/event_suppression/",
"rel": "bookmark"
}
],
"id": "v1"
}
This operation does not accept a request body.
Alarms
These APIs allow the display of the Active Alarms in the system.
Lists all active alarms based on specified query
The supported query options are alarm_id, entity_type_id, entity_instance_id, severity and alarm_type.
Normal response codes
200
Error response codes
computeFault (400, 500, ...), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Request parameters
Parameter | Style | Type | Description |
---|---|---|---|
include_suppress (Optional) | query | xsd:boolean | This optional parameter when set to true (include_suppress=true) specifies to include suppressed alarms in output. |
expand (Optional) | query | xsd:boolean | This optional parameter when set to true (expand=true) specifies that the response should contains the same response parameters as when querying for a specific alarm. |
Response parameters
Parameter | Style | Type | Description |
---|---|---|---|
ialarms (Optional) | plain | xsd:list | The list of active alarms based on the specified query. |
alarm_id (Optional) | plain | xsd:string | The alarm ID; each type of alarm has a unique ID. Note the alarm_id and the entity_instance_id uniquely identify an alarm instance. |
entity_instance_id (Optional) | plain | xsd:string | The instance of the object raising alarm. A . separated list of sub-entity-type=instance-value pairs, representing the containment structure of the overall entity instance. Note the alarm_id and the entity_instance_id uniquely identify an alarm instance. |
reason_text (Optional) | plain | xsd:string | The text description of the alarm. |
severity (Optional) | plain | xsd:string | The severity of the alarm; critical ,
major , minor , or warning . |
timestamp (Optional) | plain | xsd:dateTime | The time in UTC at which the alarm has last been updated. |
uuid (Optional) | plain | csapi:UUID | The unique identifier of the alarm. |
http://192.168.204.2:18002/v1/alarms?q.field=severity&q.op=eq&q.type=&q.value=major&include_suppress=True
{
"ialarms":[
{
"severity":"major",
"timestamp":"2016-05-12T12:11:10.405609",
"uuid":"25d28c97-70e4-45c7-a896-ba8e71a81f26",
"alarm_id":"400.002",
"entity_instance_id":"service_domain=controller.service_group=oam-services",
"suppression_status":"suppressed",
"reason_text":"Service group oam-services loss of redundancy; expected 1 standby member but no standby members available",
"mgmt_affecting": "warning"
},
{
"severity":"major",
"timestamp":"2016-05-12T12:08:12.850730",
"uuid":"63c94239-2d16-4a30-a910-60198de1c0a8",
"alarm_id":"200.001",
"entity_instance_id":"host=controller-1",
"suppression_status":"unsuppressed",
"reason_text":"controller-1 was administratively locked to take it out-of-service.",
"mgmt_affecting": "warning"
}
]
}
Shows information about a specific alarm
Normal response codes
200
Error response codes
computeFault (400, 500, ...), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Request parameters
Parameter | Style | Type | Description |
---|---|---|---|
alarm_uuid | URI | csapi:UUID | The unique identifier of an existing active alarm. |
Response parameters
Parameter | Style | Type | Description |
---|---|---|---|
alarm_id (Optional) | plain | xsd:string | The alarm ID; each type of alarm has a unique ID. Note the alarm_id and the entity_instance_id uniquely identify an alarm instance. |
entity_instance_id (Optional) | plain | xsd:string | The instance of the object raising alarm. A . separated list of sub-entity-type=instance-value pairs, representing the containment structure of the overall entity instance. Note the alarm_id and the entity_instance_id uniquely identify an alarm instance. |
reason_text (Optional) | plain | xsd:string | The text description of the alarm. |
severity (Optional) | plain | xsd:string | The severity of the alarm; critical ,
major , minor , or warning . |
timestamp (Optional) | plain | xsd:dateTime | The time in UTC at which the alarm has last been updated. |
uuid (Optional) | plain | csapi:UUID | The unique identifier of the alarm. |
alarm_state (Optional) | plain | xsd:string | The state of the alarm; set or clear |
service_affecting (Optional) | plain | xsd:string | Indicates whether the alarm affects the service. |
proposed_repair_action (Optional) | plain | xsd:string | The proposed action to clear the alarm. |
alarm_type (Optional) | plain | xsd:string | The type of the alarm. |
entity_type_id (Optional) | plain | xsd:string | The type of the object raising the alarm. A . separated list of sub-entity-type, representing the containment structure of the overall entity type. |
probable_cause (Optional) | plain | xsd:string | The probable cause of the alarm. |
suppression (Optional) | plain | xsd:string | Indicates whether suppression of the specific alarm is allowed. |
uuid (Optional) | plain | csapi:UUID | The universally unique identifier for this object. |
links (Optional) | plain | xsd:list | For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage. |
created_at (Optional) | plain | xsd:dateTime | The time when the object was created. |
updated_at (Optional) | plain | xsd:dateTime | The time when the object was last updated. |
{
"alarm_state": "set",
"service_affecting": "True",
"proposed_repair_action": "contact next level of support",
"alarm_type": "processing-error",
"severity": "minor",
"created_at": "2014-09-23T00:38:16.797155+00:00",
"entity_type_id": "host",
"probable_cause": "key-expired",
"updated_at": "2014-09-24T00:38:17.403135+00:00",
"alarm_id": "400.003",
"entity_instance_id": "system=big_lab.host=controller-0",
"suppression": "False",
"timestamp": "2014-09-24T00:38:17.400169+00:00",
"uuid": "2a88acd3-e9eb-432e-bc0a-4276e3537a40",
"reason_text": "evaluation license key will exprire on 31-dec-2014",
"mgmt_affecting": "critical"
}
This operation does not accept a request body.
Deletes a specific alarm
NOTE Typically this command should NOT be used. I.e typically alarms will be and should be cleared by the system when the alarm condition clears. This command is only provided in the event that the alarm has cleared but for some reason the system has not removed the alarm.
Normal response codes
204
Request parameters
Parameter | Style | Type | Description |
---|---|---|---|
alarm_uuid | URI | csapi:UUID | The unique identifier of an existing active alarm. |
This operation does not accept a request body.
Summarize all active alarms by severity
Normal response codes
200
Error response codes
computeFault (400, 500, ...), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413)
Request parameters
Parameter | Style | Type | Description |
---|---|---|---|
include_suppress (Optional) | query | xsd:boolean | This optional parameter when set to true (include_suppress=true) specifies to include suppressed alarms in the summations (default false). |
Response parameters
Parameter | Style | Type | Description |
---|---|---|---|
system_uuid (Optional) | plain | csapi:UUID | UUID of the system. |
status (Optional) | plain | xsd:string | Overall system status based on alarms present;
critical , degraded , or OK . |
critical (Optional) | plain | xsd:integer | Count of critical alarms on the system |
major (Optional) | plain | xsd:integer | Count of major alarms on the system |
minor (Optional) | plain | xsd:integer | Count of minor alarms on the system |
warnings (Optional) | plain | xsd:integer | Count of warnings on the system |
{
"status": "OK",
"major": 0,
"warnings": 0,
"system_uuid": "6a314f63-4969-46f8-9221-b69b6b50424c",
"critical": 0,
"minor": 0
}
Event Log
These APIs allow the display of the Event Log in the system. The Event log contains both historical alarms and customer logs.
Lists all event logs (historical alarms and customer logs) based on specified query. The logs are returned in reverse chronological order
The supported query options are event_log_id, entity_type_id, entity_instance_id, severity, event_log_type, start and end.
Normal response codes
200
Error response codes
computeFault (400, 500, ...), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Request parameters
Parameter | Style | Type | Description |
---|---|---|---|
q (Optional) | query | xsd:list | This parameter specifies filter rules for the logs to be returned. |
limit (Optional) | query | xsd:int | This parameter specifies the maximum number of event logs to be returned. |
alarms (Optional) | query | xsd:boolean | This optional parameter when set to true (alarms=true) specifies that only alarm event log records should be returned. |
logs (Optional) | query | xsd:boolean | This optional parameter when set to true (logs=true) specifies that only customer log records should be returned. |
include_suppress (Optional) | query | xsd:boolean | This optional parameter when set to true (include_suppress=true) specifies to include suppressed alarms in output. |
expand (Optional) | query | xsd:boolean | This optional parameter when set to true (expand=true) specifies that the response should contains the same response parameters as when querying for a specific event log. |
Response parameters
Parameter | Style | Type | Description |
---|---|---|---|
event_log (Optional) | plain | xsd:list | The list of events log based on the specified query. |
event_log_id (Optional) | plain | xsd:string | The event log ID; each type of event log has a unique ID. Note the event_log_id and the entity_instance_id uniquely identify an event log instance. |
state (Optional) | plain | xsd:string | The state of the event; set , clear or
log |
entity_instance_id (Optional) | plain | xsd:string | The instance of the object generating the event log. A . separated list of sub-entity-type=instance-value pairs, representing the containment structure of the overall entity instance. Note the event_log_id and the entity_instance_id uniquely identify an event log instance. |
reason_text (Optional) | plain | xsd:string | The text description of the event log. |
severity (Optional) | plain | xsd:string | The severity of the event log; critical ,
major , minor or warning . |
timestamp (Optional) | plain | xsd:dateTime | The time in UTC at which the event log has last been updated. |
uuid (Optional) | plain | csapi:UUID | The unique identifier of the event log. |
next (Optional) | plain | xsd:string | The next attribute is the request to use to get the next n items. It is used to paginate the event log list. |
http://192.168.204.2:18002/v1/event_log?q.field=start&q.field=end&q.op=eq&q.op=eq&q.type=&q.type=&q.value=2014-11-28T16%3A56%3A44&q.value=2014-11-28T16%3A56%3A45&limit=2
{
"event_log": [
{
"severity": "critical",
"timestamp": "2014-11-28T16:56:44.814747",
"uuid": "67f88971-d769-450e-9e8a-126dd8585187",
"event_log_id": "400.005",
"entity_instance_id": "host=controller-0.network=mgmt",
"reason_text": "Communication failure detected with peer over port eth1 on host controller-0",
"state": "log"
},
{
"severity": "major",
"timestamp": "2014-11-28T16:56:44.808965",
"uuid": "1a259ab9-8ea2-4177-8053-ad7596509c66",
"log_id": "400.002",
"entity_instance_id": "service_domain=controller.service_group=cloud-services",
"reason_text": "Service group cloud-services loss of redundancy; expected 1 standby member but no standby members available",
"state": "set"
}],
"next": "http://192.168.204.2:18002/v1/event_log?sort_key=timestamp&sort_dir=desc&limit=2&marker=1a259ab9-8ea2-4177-8053-ad7596509c66"
}
Shows information about a specific event log
Normal response codes
200
Error response codes
computeFault (400, 500, ...), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Request parameters
Parameter | Style | Type | Description |
---|---|---|---|
log_uuid | URI | csapi:UUID | The unique identifier of an event log. |
Response parameters
Parameter | Style | Type | Description |
---|---|---|---|
event_log_id (Optional) | plain | xsd:string | The event log ID; each type of event log has a unique ID. Note the event_log_id and the entity_instance_id uniquely identify an event log instance. |
state (Optional) | plain | xsd:string | The state of the event; set , clear or
log |
entity_instance_id (Optional) | plain | xsd:string | The instance of the object generating the event log. A . separated list of sub-entity-type=instance-value pairs, representing the containment structure of the overall entity instance. Note the event_log_id and the entity_instance_id uniquely identify an event log instance. |
reason_text (Optional) | plain | xsd:string | The text description of the event log. |
severity (Optional) | plain | xsd:string | The severity of the event log; critical ,
major , minor or warning . |
timestamp (Optional) | plain | xsd:dateTime | The time in UTC at which the event log has last been updated. |
uuid (Optional) | plain | csapi:UUID | The unique identifier of the event log. |
next (Optional) | plain | xsd:string | The next attribute is the request to use to get the next n items. It is used to paginate the event log list. |
uuid (Optional) | plain | csapi:UUID | The universally unique identifier for this object. |
links (Optional) | plain | xsd:list | For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage. |
created_at (Optional) | plain | xsd:dateTime | The time when the object was created. |
updated_at (Optional) | plain | xsd:dateTime | The time when the object was last updated. |
{
"state": "set",
"service_affecting": "True",
"proposed_repair_action":
"Contact next level of support.",
"event_log_type": "processing-error",
"severity": "critical",
"created_at": "2014-11-28T20:00:56.116251+00:00",
"entity_type_id": "service_domain.service_group.host",
"probable_cause": "underlying-resource-unavailable",
"updated_at": null,
"event_log_id": "400.001",
"entity_instance_id":"system=1bcd6f11-8152-45f7-9d93-0960e1887afe.service_domain=controller.service_group=patching-services.host=controller-0",
"suppression": "True",
"timestamp": "2014-11-28T20:00:56.114060+00:00",
"uuid": "8701d806-cae7-4f34-be8d-17fd11a0d25d",
"reason_text": "Service group failure; patch-alarm-manager(disabled, failed)."
}
This operation does not accept a request body.
Event Suppression
These APIs allow the display of the Event Suppression state in the system.
Lists suppressed event id's
Normal response codes
200
Error response codes
computeFault (400, 500, ...), serviceUnavailable (503), badRequest (400), unauthorized (401), forbidden (403), badMethod (405), overLimit (413), itemNotFound (404)
Response parameters
Parameter | Style | Type | Description |
---|---|---|---|
event_suppression (Optional) | plain | xsd:list | The list of suppressed event types. |
alarm_id (Optional) | plain | xsd:string | The alarm ID type (event ID type) that can be suppressed or unsuppressed. |
description (Optional) | plain | xsd:string | The text description of the event type. |
suppression_status (Optional) | plain | xsd:string | The suppression status for the event ID type;
suppressed or unsuppressed |
uuid (Optional) | plain | csapi:UUID | The universally unique identifier for this object. |
links (Optional) | plain | xsd:list | For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage. |
created_at (Optional) | plain | xsd:dateTime | The time when the object was created. |
updated_at (Optional) | plain | xsd:dateTime | The time when the object was last updated. |
{
"event_suppression":[
{
"alarm_id":"100.101",
"suppression_status":"unsuppressed",
"description":"Platform CPU threshold exceeded; threshold x%, actual y% .",
"links":[
{
"href":"http://192.168.204.2:6385/v1/event_suppression/494af09d-6810-4cf2-a57b-528f570f0511",
"rel":"self"
},
{
"href":"http://192.168.204.2:6385/event_suppression/494af09d-6810-4cf2-a57b-528f570f0511",
"rel":"bookmark"
}
],
"uuid":"494af09d-6810-4cf2-a57b-528f570f0511"
},
{
"alarm_id":"100.102",
"suppression_status":"unsuppressed",
"description":"VSwitch CPU threshold exceeded; threshold x%, actual y% .",
"links":[
{
"href":"http://192.168.204.2:6385/v1/event_suppression/b140b479-10a3-430f-9aba-a9a46b3fc03f",
"rel":"self"
},
{
"href":"http://192.168.204.2:6385/event_suppression/b140b479-10a3-430f-9aba-a9a46b3fc03f",
"rel":"bookmark"
}
],
"uuid":"b140b479-10a3-430f-9aba-a9a46b3fc03f"
},
...
{
"alarm_id":"900.003",
"suppression_status":"suppressed",
"description":"Patch host install failure.",
"links":[
{
"href":"http://192.168.204.2:6385/v1/event_suppression/72285cc6-07ad-47ef-8b39-2e4482895533",
"rel":"self"
},
{
"href":"http://192.168.204.2:6385/event_suppression/72285cc6-07ad-47ef-8b39-2e4482895533",
"rel":"bookmark"
}
],
"uuid":"72285cc6-07ad-47ef-8b39-2e4482895533"
}
]
}
This operation does not accept a request body.
Modifies the value of an event suppression
Normal response codes
200
Error response codes
badMediaType (415)
Request parameters
Parameter | Style | Type | Description |
---|---|---|---|
event_suppression_uuid | URI | csapi:UUID | The unique identifier of an event suppression. |
suppression_status (Optional) | plain | xsd:string | The suppression status of an event suppression;
suppressed or unsuppressed |
Response parameters
Parameter | Style | Type | Description |
---|---|---|---|
event_suppression (Optional) | plain | xsd:list | URIs to the modified event suppression. |
alarm_id (Optional) | plain | xsd:string | The alarm ID type (event ID type) that can be suppressed or unsuppressed. |
description (Optional) | plain | xsd:string | The text description of the event type. |
suppression_status (Optional) | plain | xsd:string | The suppression status for the event ID type;
suppressed or unsuppressed |
uuid (Optional) | plain | csapi:UUID | The universally unique identifier for this object. |
links (Optional) | plain | xsd:list | For convenience, resources contain links to themselves. This allows a client to easily obtain rather than construct resource URIs. The following types of link relations are associated with resources: a self link containing a versioned link to the resource, and a bookmark link containing a permanent link to a resource that is appropriate for long term storage. |
created_at (Optional) | plain | xsd:dateTime | The time when the object was created. |
updated_at (Optional) | plain | xsd:dateTime | The time when the object was last updated. |
[
{
"path":"/suppression_status",
"value":"unsuppressed",
"op":"replace"
}
]
{
"description":"Service group loss of redundancy; expected <num> standby member<s> but only <num> standby member<s> available.ORService group loss of redundancy; expected <num> standby member<s> but only <num> standby member<s> available.ORService group loss of redu ...",
"links":[
{
"href":"http://192.168.204.2:6385/v1/event_suppression/eb54eb1a-6314-4818-8fe7-83bdb6fe5b80",
"rel":"self"
},
{
"href":"http://192.168.204.2:6385/event_suppression/eb54eb1a-6314-4818-8fe7-83bdb6fe5b80",
"rel":"bookmark"
}
],
"created_at":"2016-05-09T11:25:22.436412+00:00",
"updated_at":"2016-05-12T12:38:51.524402+00:00",
"alarm_id":"400.002",
"suppression_status":"unsuppressed",
"id":37,
"uuid":"eb54eb1a-6314-4818-8fe7-83bdb6fe5b80"
}