Stop rollup jobs API
editStop rollup jobs API
editStops an existing, started rollup job.
This functionality is in technical preview and may be changed or removed in a future release. Elastic will work to fix any issues, but features in technical preview are not subject to the support SLA of official GA features.
For version 8.5 and above we recommend downsampling over rollups as a way to reduce your storage costs for time series data.
Request
editPOST _rollup/job/<job_id>/_stop
Prerequisites
edit-
If the Elasticsearch security features are enabled, you must have
manage
ormanage_rollup
cluster privileges to use this API. For more information, see Security privileges.
Description
editIf you try to stop a job that does not exist, an exception occurs. If you try to stop a job that is already stopped, nothing happens.
Path parameters
edit-
<job_id>
- (Required, string) Identifier for the rollup job.
Query parameters
edit-
timeout
-
(Optional, TimeValue) If
wait_for_completion
istrue
, the API blocks for (at maximum) the specified duration while waiting for the job to stop. If more thantimeout
time has passed, the API throws a timeout exception. Defaults to30s
.Even if a timeout exception is thrown, the stop request is still processing and eventually moves the job to
STOPPED
. The timeout simply means the API call itself timed out while waiting for the status change. -
wait_for_completion
-
(Optional, Boolean) If set to
true
, causes the API to block until the indexer state completely stops. If set tofalse
, the API returns immediately and the indexer is stopped asynchronously in the background. Defaults tofalse
.
Response codes
edit-
404
(Missing resources) - This code indicates that there are no resources that match the request. It occurs if you try to stop a job that doesn’t exist.
Examples
editSince only a stopped job can be deleted, it can be useful to block the API until
the indexer has fully stopped. This is accomplished with the
wait_for_completion
query parameter, and optionally a timeout
:
response = client.rollup.stop_job( id: 'sensor', wait_for_completion: true, timeout: '10s' ) puts response
POST _rollup/job/sensor/_stop?wait_for_completion=true&timeout=10s
The parameter blocks the API call from returning until either the job has moved
to STOPPED
or the specified time has elapsed. If the specified time elapses
without the job moving to STOPPED
, a timeout exception is thrown.