Ruby integrations for Elasticsearch
This release introduces two new Helpers in the client:
See Helpers to read more about them.
cluster.info
- Returns different information about the cluster.This functionality is Experimental and may be changed or removed completely in a future release. Elastic will take a best effort approach to fix any issues, but experimental features are not subject to the support SLA of official GA features.
query_ruleset
query_ruleset.delete
- Deletes a query ruleset.query_ruleset.get
- Returns the details about a query ruleset.query_ruleset.put
- Creates or updates a query ruleset.search_application.render_query
Renders a query for given search application search parameters.security.create_cross_cluster_api_key
- Creates a cross-cluster API key for API key based remote cluster access.security.upate_cross_cluster_api_key
- Updates attributes of an existing cross-cluster API key.synonyms
synonyms.delete
- Deletes a synonym setsynonyms.get
- Retrieves a synonym setsynonyms.put
- Creates or updates a synonyms setsynonym_rule
synonym_rule.put
- Creates or updates a synonym rule in a synonym setsynonyms
synonyms_set.get
- Retrieves a summary of all defined synonym setsminitest-reporters
to >= 1.6
to include showing failures at the end of the test run.watcher.get_settings
- Retrieve settings for the watcher system index.watcher.update_settings
- Update settings for the watcher system index.indices.delete_data_lifecycle
- Deletes the data lifecycle of the selected data streamsindices.explain_data_lifecycle
- Retrieves information about the index's current DLM lifecycle, such as any potential encountered error, time since creation etc.indices.get_data_lifecycle
- Returns the data lifecycle of the selected data streams.indices.put_data_lifecycle
- Updates the data lifecycle of the selected data streams.search_application.delete
- Deletes a search application.search_application.delete_behavioral_analytics
- Delete a behavioral analytics collection.search_application.get
- Returns the details about a search application.search_application.get_behavioral_analytics
- Returns the existing behavioral analytics collections.search_application.list
- Returns the existing search applications.search_application.post_behavioral_analytics_event
- Creates a behavioral analytics event for existing collection.search_application.put
- Creates or updates a search application.search_application.put_behavioral_analytics
- Creates a behavioral analytics collection.search_application.search
- Perform a search against a search application.clear_scroll
now works with the argument ignore: 404
. Issue on GitHub.ignore: 404
. APIs that were supposed to support this wouldn't parse the parameters correctly. The support it now: security.get_role
, watcher.delete_watch
cluster.get_component_template
, indices.get_data_stream
, indices.get_index_template
, indices.simulate_index_template
, indices.simulate_template
- Add include_defaults
(Boolean) parameter: Return all default configurations for the component template (default: false).machine_learning.put_trained_model
- Adds wait_for_completion
(Boolean) parameter: Whether to wait for all child operations(e.g. model download) to complete, before returning or not (default: false).machine_learning.start_trained_model_deployment
- Adds deployiment_id
(String) parameter: The Id of the new deployment. Defaults to the model_id if not set.search
- Adds include_named_queries_score
(Boolean) parameter: Indicates whether hit.matched_queries should be rendered as a map that includes the name of the matched query associated with its score (true) or as an array containing the name of the matched queries (false).transform.delete_transform
- Adds delete_dest_index
(Boolean) parameter: When true
, the destination index is deleted together with the transform. The default value is false
, meaning that the destination index will not be deleted.health_report
- Returns the health of the cluster.transform.schedule_now_transform
- Schedules now a transform.transform.get_transform_stats
- Adds timeout
(Time) parameter. Controls the time to wait for the stats.transform.start_transform
- Adds from
(String) parameter. Restricts the set of transformed entities to those changed after this time.ml.delete_job
, ml.reset_job
- Add delete_user_annotations
(Boolean) parameter. Should annotations added by the user be deleted.ml.clear_trained_model_deployment_cache
, ml.infer_trained_model
, ml.put_trained_model_definition_part
, ml.put_trained_model_vocabulary
, ml.start_trained_model_deployment
, ml.stop_trained_model_deployment
- These APIs are no longer in Beta.update_trained_model_deployment
- Updates certain properties of trained model deployment (This functionality is in Beta and is subject to change).cluster.reroute
- :metric
parameter adds none
as an option.ml.start_trained_model_deployment
- New parameter :priority
(String), the deployment priorityFixes security.create_service_token
API, uses POST
when token name isn't present.
Thanks @carlosdelest for reporting in #1961.
Fixes bug when instantiating client with api_key
: When passing in api_key
and transport_options
that don't include headers to the client, the api_key
code would overwrite the arguments passed in for transport_options
. This was fixed in this Pull Request.
Thanks svdasein for reporting in #1940.
With the latest release of elastic-transport
- v8.1.0
- this gem now supports Faraday v2. Elasticsearch Ruby has an open dependency on elastic-transport
('elastic-transport', '~> 8'
), so when you upgrade your gems, 8.1.0
will be installed. This supports both Faraday v1 and Faraday v2. The main change on dependencies when using Faraday v2 is all adapters, except for the default net_http
one, have been moved out of Faraday into separate gems. This means if you're not using the default adapter and you migrate to Faraday v2, you'll need to add the adapter gems to your Gemfile.
These are the gems required for the different adapters with Faraday 2, instead of the libraries on which they were based:
# HTTPCLient
gem 'faraday-httpclient'
# NetHTTPPersistent
gem 'faraday-net_http_persistent'
# Patron
gem 'faraday-patron'
# Typhoeus
gem 'faraday-typhoeus'
Things should work fine if you migrate to Faraday 2 as long as you include the adapter (unless you're using the default one net-http
), but worst case scenario, you can always lock the version of Faraday in your project to 1.x:
gem 'faraday', '~> 1'
Be aware if migrating to Faraday v2 that it requires at least Ruby 2.6
, unlike Faraday v1 which requires 2.4
.
Troubleshooting
If you see a message like:
:adapter is not registered on Faraday::Adapter (Faraday::Error)
Then you probably need to include the adapter library in your gemfile and require it.
Please submit an issue if you encounter any problems.
machine_learning.clear_trained_model_deployment_cache
- Clear the cached results from a trained model deployment (Beta).security.bulk_update_api_keys
- Updates the attributes of multiple existing API keys.rollup.rollup
renamed to indices.downsample
. The method now receives the index
to downsample (Required) and instead of rollup_index
, use target_index as the index to store downsampled data.
security.get_api_key
and security.query_api_keys
add :with_limited_by
flag to show the limited-by role descriptors of API Keys.
security.get_user
adds :with_profile_uid
flag to retrieve profile uid (if exists) associated to the user.
security.get_user_profile
now retrieves user profiles for given unique ID(s). :uid
is now a list of comma-separated list of unique identifier for user profiles.
text_structure.find_structure
adds :ecs_compatibility
, optional parameter to specify the compatibility mode with ECS Grok patterns - may be either 'v1' or 'disabled'.
Machine learning APIs promoted from Experimental to Beta:
machine_learning.clear_trained_model_deployment_cache.rb
machine_learning.infer_trained_model.rb
machine_learning.put_trained_model_definition_part.rb
machine_learning.put_trained_model_vocabulary.rb
machine_learning.start_trained_model_deployment.rb
machine_learning.stop_trained_model_deployment.rb
Security usef profile APIs promoted from Experimental to Stable:
security/activate_user_profile
security/disable_user_profile
security/enable_user_profile
security/get_user_profile
security/has_privileges_user_profile
security/suggest_user_profile
security/update_user_profile_data