How to generate a support bundle
1. POST /support-bundle API
The POST /support-bundle
endpoint is to trigger the asynchronous process to generate the support bundle. The following is an example of the response:
{
"async_task_id": 1,
"operation": "SUPPORT_BUNDLE_GENERATE",
"reference": "hyperscale-support-20240319-13-38-33",
"status": "RUNNING",
"start_time": "2024-03-19T13:38:34.325159Z",
"cancellable": true
}
2. GET /async-tasks/{async-task-id} API
Since the generation of support bundle is an asynchronous process, it is helpful to know the current status of these activities by utilizing the GET /async-tasks/{async-task-id}
endpoint. Here the value of request parameter async-task-id
will be the value of async_task_id
field of the response of /support-bundle
API (defined above)/
In the response of the API, the current status of the support-bundle
generation can be identified by the field status
.
The following is an example of the response:
{
"async_task_id": 1,
"operation": "SUPPORT_BUNDLE_GENERATE",
"reference": "hyperscale-support-20240319-13-38-33.tar.gz",
"status": "SUCCEEDED",
"start_time": "2024-03-19T13:38:34.325159Z",
"end_time": "2024-03-19T13:39:43.118582Z",
"cancellable": true
}
3. GET /file-download API
GET /file-download
API can be triggered to download the generated support-bundle when status
from the response of GET /async-tasks/{async-task-id}
is received as SUCCEEDED
or PARTIAL_SUCCEEDED
.
This API expects query parameter entity_type
as SUPPORT_BUNDLE
and id
as the value of async_task_id
from the above response.
The response of this API will be in octet-stream
and a download link will be provided of the support-bundle tar file.
4. Other related APIs
a) DELETE /support-bundle/{async-task-id} API
The DELETE /support-bundle/{async-task-id}
API is useful to delete any already SUCCEEDED
or PARTIAL_SUCCEEDED
or FAILED
support-bundle file or directory.
This is useful to clean up the disk space consumed by these tar files or directories.
b) PUT /async-tasks/{async-task-id}/cancel API
The PUT async-tasks/{async-task-id}/cancel
API is useful to cancel any RUNNING
support-bundle asynchronous generation.
The following is an example of the response:
{
"async_task_id": 1,
"operation": "SUPPORT_BUNDLE_GENERATE",
"reference": "hyperscale-support-20240319-13-38-33",
"status": "CANCELLED",
"start_time": "2024-03-19T13:38:34.325159Z",
"end_time": "2024-03-19T13:38:43.118582Z",
"cancellable": true
}
c) GET /async-tasks
This API is useful to list all async tasks. The following is an example of the response:
[
{
"async_task_id": 1,
"operation": "SUPPORT_BUNDLE_GENERATE",
"reference": "hyperscale-support-20240318-09-54-53.tar.gz",
"status": "SUCCEEDED",
"start_time": "2024-03-18T09:54:53.419806Z",
"end_time": "2024-03-18T09:55:53.957697Z",
"cancellable": true
},
{
"async_task_id": 2,
"operation": "SUPPORT_BUNDLE_GENERATE",
"reference": "hyperscale-support-20240318-14-45-03.tar.gz",
"status": "PARTIAL_SUCCEEDED",
"start_time": "2024-03-18T14:45:04.00008Z",
"end_time": "2024-03-18T14:46:04.294322Z",
"cancellable": true,
"errors": [
{
"message": "Support bundle generation API is not enabled",
"object_name": "load-service"
},
{
"message": "Support bundle generation API is not enabled",
"object_name": "unload-service"
}
]
},
{
"async_task_id": 3,
"operation": "SUPPORT_BUNDLE_GENERATE",
"reference": "hyperscale-support-20240319-13-38-33",
"status": "CANCELLED",
"start_time": "2024-03-19T13:38:34.325159Z",
"end_time": "2024-03-19T13:39:34.356925Z",
"cancellable": true
}
]