Module: Elasticsearch::API::Monitoring::Actions
- Included in:
- MonitoringClient
- Defined in:
- lib/elasticsearch/api/namespace/monitoring.rb,
lib/elasticsearch/api/actions/monitoring/bulk.rb
Instance Method Summary collapse
-
#bulk(arguments = {}) ⇒ Object
Used by the monitoring features to send monitoring data.
Instance Method Details
#bulk(arguments = {}) ⇒ Object
Used by the monitoring features to send monitoring data.
or the conveniency “combined” format can be passed, refer to Elasticsearch::API::Utils.__bulkify documentation.
*Deprecation notice*: Specifying types in urls has been deprecated Deprecated since version 7.0.0
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/elasticsearch/api/actions/monitoring/bulk.rb', line 42 def bulk(arguments = {}) request_opts = { endpoint: arguments[:endpoint] || 'monitoring.bulk' } defined_params = [:type].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 'body' missing" unless arguments[:body] arguments = arguments.clone headers = arguments.delete(:headers) || {} body = arguments.delete(:body) _type = arguments.delete(:type) method = Elasticsearch::API::HTTP_POST path = if _type "_monitoring/#{Utils.__listify(_type)}/bulk" else '_monitoring/bulk' end params = Utils.process_params(arguments) payload = if body.is_a? Array Elasticsearch::API::Utils.__bulkify(body) else body end headers.merge!('Content-Type' => 'application/x-ndjson') Elasticsearch::API::Response.new( perform_request(method, path, params, payload, headers, request_opts) ) end |