Snapshots Status APIedit
The Snapshots Status API allows to retrieve detailed information about snapshots in progress.
Snapshots Status Requestedit
A SnapshotsStatusRequest
:
SnapshotsStatusRequest request = new SnapshotsStatusRequest();
Required Argumentsedit
The following arguments must be provided:
Optional Argumentsedit
The following arguments can optionally be provided:
The command will fail if some of the snapshots are unavailable. The |
Synchronous Executionedit
SnapshotsStatusResponse response = client.snapshot().status(request, RequestOptions.DEFAULT);
Asynchronous Executionedit
The asynchronous execution of retrieving snapshot statuses requires both the
SnapshotsStatusRequest
instance and an ActionListener
instance to be
passed to the asynchronous method:
The asynchronous method does not block and returns immediately. Once it is
completed the ActionListener
is called back using the onResponse
method
if the execution successfully completed or using the onFailure
method if
it failed.
A typical listener for SnapshotsStatusResponse
looks like:
Snapshots Status Responseedit
The returned SnapshotsStatusResponse
allows to retrieve information about the
executed operation as follows:
List<SnapshotStatus> snapshotStatusesResponse = response.getSnapshots(); SnapshotStatus snapshotStatus = snapshotStatusesResponse.get(0); SnapshotsInProgress.State snapshotState = snapshotStatus.getState(); SnapshotStats shardStats = snapshotStatus.getIndices().get(indexName).getShards().get(0).getStats();