module Elasticsearch::API::Watcher::Actions
Public Instance Methods
Acknowledges a watch, manually throttling the execution of the watch’s actions.
@option arguments [String] :watch_id Watch ID @option arguments [List] :action_id A comma-separated list of the action ids to be acked @option arguments [Hash] :headers Custom HTTP headers
@see www.elastic.co/guide/en/elasticsearch/reference/8.16/watcher-api-ack-watch.html
# File lib/elasticsearch/api/actions/watcher/ack_watch.rb, line 33 def ack_watch(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'watcher.ack_watch' } defined_params = %i[watch_id action_id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'watch_id' missing" unless arguments[:watch_id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil _watch_id = arguments.delete(:watch_id) _action_id = arguments.delete(:action_id) method = Elasticsearch::API::HTTP_PUT path = if _watch_id && _action_id "_watcher/watch/#{Utils.__listify(_watch_id)}/_ack/#{Utils.__listify(_action_id)}" else "_watcher/watch/#{Utils.__listify(_watch_id)}/_ack" end params = {} Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Activates a currently inactive watch.
@option arguments [String] :watch_id Watch ID @option arguments [Hash] :headers Custom HTTP headers
@see www.elastic.co/guide/en/elasticsearch/reference/8.16/watcher-api-activate-watch.html
# File lib/elasticsearch/api/actions/watcher/activate_watch.rb, line 32 def activate_watch(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'watcher.activate_watch' } defined_params = [:watch_id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'watch_id' missing" unless arguments[:watch_id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil _watch_id = arguments.delete(:watch_id) method = Elasticsearch::API::HTTP_PUT path = "_watcher/watch/#{Utils.__listify(_watch_id)}/_activate" params = {} Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Deactivates a currently active watch.
@option arguments [String] :watch_id Watch ID @option arguments [Hash] :headers Custom HTTP headers
@see www.elastic.co/guide/en/elasticsearch/reference/8.16/watcher-api-deactivate-watch.html
# File lib/elasticsearch/api/actions/watcher/deactivate_watch.rb, line 32 def deactivate_watch(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'watcher.deactivate_watch' } defined_params = [:watch_id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'watch_id' missing" unless arguments[:watch_id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil _watch_id = arguments.delete(:watch_id) method = Elasticsearch::API::HTTP_PUT path = "_watcher/watch/#{Utils.__listify(_watch_id)}/_deactivate" params = {} Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Removes a watch from Watcher
.
@option arguments [String] :id Watch ID @option arguments [Hash] :headers Custom HTTP headers
@see www.elastic.co/guide/en/elasticsearch/reference/8.16/watcher-api-delete-watch.html
# File lib/elasticsearch/api/actions/watcher/delete_watch.rb, line 32 def delete_watch(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'watcher.delete_watch' } defined_params = [:id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil _id = arguments.delete(:id) method = Elasticsearch::API::HTTP_DELETE path = "_watcher/watch/#{Utils.__listify(_id)}" params = Utils.process_params(arguments) if Array(arguments[:ignore]).include?(404) Utils.__rescue_from_not_found do Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end else Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end end
Forces the execution of a stored watch.
@option arguments [String] :id Watch ID @option arguments [Boolean] :debug indicates whether the watch should execute in debug mode @option arguments [Hash] :headers Custom HTTP headers @option arguments [Hash] :body Execution control
@see www.elastic.co/guide/en/elasticsearch/reference/8.16/watcher-api-execute-watch.html
# File lib/elasticsearch/api/actions/watcher/execute_watch.rb, line 34 def execute_watch(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'watcher.execute_watch' } defined_params = [:id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? arguments = arguments.clone headers = arguments.delete(:headers) || {} body = arguments.delete(:body) _id = arguments.delete(:id) method = Elasticsearch::API::HTTP_PUT path = if _id "_watcher/watch/#{Utils.__listify(_id)}/_execute" else '_watcher/watch/_execute' end params = Utils.process_params(arguments) Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Retrieve settings for the watcher system index
@option arguments [Time] :master_timeout Specify timeout for connection to master @option arguments [Hash] :headers Custom HTTP headers
@see www.elastic.co/guide/en/elasticsearch/reference/8.16/watcher-api-get-settings.html
# File lib/elasticsearch/api/actions/watcher/get_settings.rb, line 32 def get_settings(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'watcher.get_settings' } arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil method = Elasticsearch::API::HTTP_GET path = '_watcher/settings' params = Utils.process_params(arguments) Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Retrieves a watch by its ID.
@option arguments [String] :id Watch ID @option arguments [Hash] :headers Custom HTTP headers
@see www.elastic.co/guide/en/elasticsearch/reference/8.16/watcher-api-get-watch.html
# File lib/elasticsearch/api/actions/watcher/get_watch.rb, line 32 def get_watch(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'watcher.get_watch' } defined_params = [:id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil _id = arguments.delete(:id) method = Elasticsearch::API::HTTP_GET path = "_watcher/watch/#{Utils.__listify(_id)}" params = {} Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Creates a new watch, or updates an existing one.
@option arguments [String] :id Watch ID @option arguments [Boolean] :active Specify whether the watch is in/active by default @option arguments [Number] :version Explicit version number for concurrency control @option arguments [Number] :if_seq_no only update the watch if the last operation that has changed the watch has the specified sequence number @option arguments [Number] :if_primary_term only update the watch if the last operation that has changed the watch has the specified primary term @option arguments [Hash] :headers Custom HTTP headers @option arguments [Hash] :body The watch
@see www.elastic.co/guide/en/elasticsearch/reference/8.16/watcher-api-put-watch.html
# File lib/elasticsearch/api/actions/watcher/put_watch.rb, line 37 def put_watch(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'watcher.put_watch' } defined_params = [:id].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? raise ArgumentError, "Required argument 'id' missing" unless arguments[:id] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = arguments.delete(:body) _id = arguments.delete(:id) method = Elasticsearch::API::HTTP_PUT path = "_watcher/watch/#{Utils.__listify(_id)}" params = Utils.process_params(arguments) Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Retrieves stored watches.
@option arguments [Hash] :headers Custom HTTP headers @option arguments [Hash] :body From, size, query, sort and search_after
@see www.elastic.co/guide/en/elasticsearch/reference/8.16/watcher-api-query-watches.html
# File lib/elasticsearch/api/actions/watcher/query_watches.rb, line 32 def query_watches(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'watcher.query_watches' } arguments = arguments.clone headers = arguments.delete(:headers) || {} body = arguments.delete(:body) method = if body Elasticsearch::API::HTTP_POST else Elasticsearch::API::HTTP_GET end path = '_watcher/_query/watches' params = {} Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Starts Watcher
if it is not already running.
@option arguments [Time] :master_timeout Specify timeout for connection to master @option arguments [Hash] :headers Custom HTTP headers
@see www.elastic.co/guide/en/elasticsearch/reference/8.16/watcher-api-start.html
# File lib/elasticsearch/api/actions/watcher/start.rb, line 32 def start(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'watcher.start' } arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil method = Elasticsearch::API::HTTP_POST path = '_watcher/_start' params = Utils.process_params(arguments) Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Retrieves the current Watcher
metrics.
@option arguments [List] :metric Controls what additional stat metrics should be include in the response (options: _all, queued_watches, current_watches, pending_watches) @option arguments [Boolean] :emit_stacktraces Emits stack traces of currently running watches @option arguments [Hash] :headers Custom HTTP headers
@see www.elastic.co/guide/en/elasticsearch/reference/8.16/watcher-api-stats.html
# File lib/elasticsearch/api/actions/watcher/stats.rb, line 33 def stats(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'watcher.stats' } defined_params = [:metric].each_with_object({}) do |variable, set_variables| set_variables[variable] = arguments[variable] if arguments.key?(variable) end request_opts[:defined_params] = defined_params unless defined_params.empty? arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil _metric = arguments.delete(:metric) method = Elasticsearch::API::HTTP_GET path = if _metric "_watcher/stats/#{Utils.__listify(_metric)}" else '_watcher/stats' end params = Utils.process_params(arguments) Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Stops Watcher
if it is running.
@option arguments [Time] :master_timeout Specify timeout for connection to master @option arguments [Hash] :headers Custom HTTP headers
@see www.elastic.co/guide/en/elasticsearch/reference/8.16/watcher-api-stop.html
# File lib/elasticsearch/api/actions/watcher/stop.rb, line 32 def stop(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'watcher.stop' } arguments = arguments.clone headers = arguments.delete(:headers) || {} body = nil method = Elasticsearch::API::HTTP_POST path = '_watcher/_stop' params = Utils.process_params(arguments) Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end
Update settings for the watcher system index
@option arguments [Time] :timeout Specify timeout for waiting for acknowledgement from all nodes @option arguments [Time] :master_timeout Specify timeout for connection to master @option arguments [Hash] :headers Custom HTTP headers @option arguments [Hash] :body An object with the new index settings (Required)
@see www.elastic.co/guide/en/elasticsearch/reference/8.16/watcher-api-update-settings.html
# File lib/elasticsearch/api/actions/watcher/update_settings.rb, line 34 def update_settings(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'watcher.update_settings' } raise ArgumentError, "Required argument 'body' missing" unless arguments[:body] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = arguments.delete(:body) method = Elasticsearch::API::HTTP_PUT path = '_watcher/settings' params = Utils.process_params(arguments) Elasticsearch::API::Response.new( perform_request(method, path, params, body, headers, request_opts) ) end