Class ElasticsearchBackendSettings
Constants in this class are to be appended to a prefix to form a property key;
see BackendSettings for details.
- Author:
- Gunnar Morling
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classDefault values for the different settings if no values are given. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringAllows to define aElasticsearchHttpClientConfigurer, that can be used for instance to set custom HTTP client configurations, using an instance ofHttpAsyncClientBuilder.static final StringA external Elasticsearch client instance that Hibernate Search should use for all requests to Elasticsearch.static final StringThe timeout when establishing a connection to an Elasticsearch server.static final StringWhether automatic discovery of nodes in the Elasticsearch cluster is enabled.static final StringThe time interval between two executions of the automatic discovery, if enabled.static final StringThe host name and ports of the Elasticsearch servers to connect to.static final StringThe layout strategy for indexes and their aliases.static final StringWhether JSON included in logs should be pretty-printed (indented, with line breaks).static final StringThe strategy for mapping documents to their type name, i.e.static final StringThe maximum number of simultaneous connections to the Elasticsearch cluster, all hosts taken together.static final StringThe maximum number of simultaneous connections to each host of the Elasticsearch cluster.static final StringThe multi-tenancy strategy to use.static final StringThe password to send when connecting to the Elasticsearch servers (HTTP authentication).static final StringProperty for specifying the path prefix prepended to the request end point.static final StringThe protocol to use when connecting to the Elasticsearch servers.static final StringThe timeout when reading responses from an Elasticsearch server.static final StringThe timeout when executing a request to an Elasticsearch server.static final StringProperty for specifying the maximum duration aScrollwill be usable if no other results are fetched from Elasticsearch.static final StringThe size of the thread pool assigned to the backend.static final StringThe name to use for thebackend typeconfiguration property so that an Elasticsearch backend is instantiated by Hibernate Search.static final Stringstatic final StringThe username to send when connecting to the Elasticsearch servers (HTTP authentication).static final StringThe version of Elasticsearch running on the Elasticsearch cluster.static final StringWhether check version of the Elasticsearch cluster is enabled. -
Method Summary
-
Field Details
-
TYPE_NAME
The name to use for thebackend typeconfiguration property so that an Elasticsearch backend is instantiated by Hibernate Search.Only useful if you have more than one backend technology in the classpath; otherwise the backend type is automatically detected.
- See Also:
-
HOSTS
The host name and ports of the Elasticsearch servers to connect to.Expects a String representing a host and port such as
localhostores.mycompany.com:4400, or a String containing multiple such host-and-port strings separated by commas, or aCollection<String>containing such host-and-port strings.Cannot be used if
URISis set.Defaults to
ElasticsearchBackendSettings.Defaults.HOSTS.Multiple servers may be specified for load-balancing: requests will be assigned to each host in turns.
This property is ignored when "client.instance" is set.
- See Also:
-
PROTOCOL
The protocol to use when connecting to the Elasticsearch servers.Expects a String: either
httporhttps.Cannot be used if
URISis set.Defaults to
ElasticsearchBackendSettings.Defaults.PROTOCOL.This property is ignored when "client.instance" is set.
- See Also:
-
URIS
Alternatively toHOSTSandPROTOCOL, it is possible to define both the protocol and hosts as one or more URIs using this property.Expects either a String representing an URI such as
http://localhostorhttps://es.mycompany.com:4400, or a String containing multiple such URIs separated by commas, or aCollection<String>containing such URIs.All the URIs must have the same protocol. Cannot be used if
HOSTSorPROTOCOLare set.Defaults to
http://localhost:9200, unlessHOSTSorPROTOCOLare set, in which case they take precedence.This property is ignored when "client.instance" is set.
- See Also:
-
PATH_PREFIX
Property for specifying the path prefix prepended to the request end point. Use the path prefix if your Elasticsearch instance is located at a specific context path.Defaults to
ElasticsearchBackendSettings.Defaults.PATH_PREFIX.This property is ignored when "client.instance" is set.
- See Also:
-
VERSION
The version of Elasticsearch running on the Elasticsearch cluster.Expects either an
ElasticsearchVersionobject, or a String that can be {parsedin such an object.No default: if not provided, the version will be resolved automatically by sending a request to the Elasticsearch cluster on startup.
- See Also:
-
VERSION_CHECK_ENABLED
Whether check version of the Elasticsearch cluster is enabled.Expects a Boolean value such as
trueorfalse, or a string that can be parsed to such Boolean value.Defaults to
ElasticsearchBackendSettings.Defaults.VERSION_CHECK_ENABLED.- See Also:
-
USERNAME
The username to send when connecting to the Elasticsearch servers (HTTP authentication).Expects a String.
Defaults to no username (anonymous access).
This property is ignored when "client.instance" is set.
- See Also:
-
PASSWORD
The password to send when connecting to the Elasticsearch servers (HTTP authentication).Expects a String.
Defaults to no username (anonymous access).
This property is ignored when "client.instance" is set.
- See Also:
-
REQUEST_TIMEOUT
The timeout when executing a request to an Elasticsearch server.This includes the time needed to establish a connection, send the request and read the response.
Expects a positive Integer value in milliseconds, such as 60000, or a String that can be parsed into such Integer value.
Defaults to no request timeout.
This property is ignored when "client.instance" is set.
- See Also:
-
READ_TIMEOUT
The timeout when reading responses from an Elasticsearch server.Expects a positive Integer value in milliseconds, such as
60000, or a String that can be parsed into such Integer value.Defaults to
ElasticsearchBackendSettings.Defaults.READ_TIMEOUT.This property is ignored when "client.instance" is set.
- See Also:
-
CONNECTION_TIMEOUT
The timeout when establishing a connection to an Elasticsearch server.Expects a positive Integer value in milliseconds, such as
3000, or a String that can be parsed into such Integer value.Defaults to
ElasticsearchBackendSettings.Defaults.CONNECTION_TIMEOUT.This property is ignored when "client.instance" is set.
- See Also:
-
MAX_CONNECTIONS
The maximum number of simultaneous connections to the Elasticsearch cluster, all hosts taken together.Expects a positive Integer value, such as
20, or a String that can be parsed into such Integer value.Defaults to
ElasticsearchBackendSettings.Defaults.MAX_CONNECTIONS.This property is ignored when "client.instance" is set.
- See Also:
-
MAX_CONNECTIONS_PER_ROUTE
The maximum number of simultaneous connections to each host of the Elasticsearch cluster.Expects a positive Integer value, such as
10, or a String that can be parsed into such Integer value.Defaults to
ElasticsearchBackendSettings.Defaults.MAX_CONNECTIONS_PER_ROUTE.This property is ignored when "client.instance" is set.
- See Also:
-
DISCOVERY_ENABLED
Whether automatic discovery of nodes in the Elasticsearch cluster is enabled.Expects a Boolean value such as
trueorfalse, or a string that can be parsed to such Boolean value.Defaults to
ElasticsearchBackendSettings.Defaults.DISCOVERY_ENABLED.This property is ignored when "client.instance" is set.
- See Also:
-
DISCOVERY_REFRESH_INTERVAL
The time interval between two executions of the automatic discovery, if enabled.Expects a positive Integer value in seconds, such as
2, or a String that can be parsed into such Integer value.Defaults to
ElasticsearchBackendSettings.Defaults.DISCOVERY_REFRESH_INTERVAL.This property is ignored when "client.instance" is set.
- See Also:
-
CLIENT_CONFIGURER
Allows to define aElasticsearchHttpClientConfigurer, that can be used for instance to set custom HTTP client configurations, using an instance ofHttpAsyncClientBuilder.It can be used for example to tune the SSL context to accept self-signed certificates. It allows to override other HTTP client settings, such as
USERNAMEorMAX_CONNECTIONS_PER_ROUTE.Expects a reference to a bean of type
ElasticsearchHttpClientConfigurer.Defaults to no value.
This property is ignored when "client.instance" is set.
- See Also:
-
CLIENT_INSTANCE
A external Elasticsearch client instance that Hibernate Search should use for all requests to Elasticsearch.If this is set, Hibernate Search will not attempt to create its own Elasticsearch, and all other client-related configuration properties (hosts/uris, authentication, discovery, timeouts, max connections, configurer, ...) will be ignored.
Expects a reference to a bean of type
RestClient.Defaults to nothing: if no client instance is provided, Hibernate Search will create its own.
WARNING - Incubating API: the underlying client class may change without notice.
-
LOG_JSON_PRETTY_PRINTING
Whether JSON included in logs should be pretty-printed (indented, with line breaks).Expects a Boolean value such as
trueorfalse, or a string that can be parsed to such Boolean value.Defaults to
ElasticsearchBackendSettings.Defaults.LOG_JSON_PRETTY_PRINTING.- See Also:
-
MULTI_TENANCY_STRATEGY
The multi-tenancy strategy to use.Expects a
MultiTenancyStrategyNamevalue, or a String representation of such value.Defaults to
ElasticsearchBackendSettings.Defaults.MULTI_TENANCY_STRATEGY.- See Also:
-
MAPPING_TYPE_NAME_STRATEGY
The strategy for mapping documents to their type name, i.e. to determine the type name of a document in search hits.Expects a
TypeNameMappingStrategyNamevalue, or a String representation of such value.Defaults to
ElasticsearchBackendSettings.Defaults.MAPPING_TYPE_NAME_STRATEGY.- See Also:
-
LAYOUT_STRATEGY
The layout strategy for indexes and their aliases.Expects a reference to a bean of type
IndexLayoutStrategy.Defaults to the
simplestrategy:- The non-alias name follows the format
<hibernateSearchIndexName>-<6 digits> - The write alias follows the format
<hibernateSearchIndexName>-write - The read alias follows the format
<hibernateSearchIndexName>-read
- The non-alias name follows the format
-
THREAD_POOL_SIZE
The size of the thread pool assigned to the backend.Expects a strictly positive integer value, or a string that can be parsed to such integer value.
Defaults to the number of processor cores available to the JVM on startup.
See the reference documentation, section "Elasticsearch backend - Threads", for more information about this setting and its implications.
- See Also:
-
SCROLL_TIMEOUT
Property for specifying the maximum duration aScrollwill be usable if no other results are fetched from Elasticsearch.Expects a positive Integer value in seconds, such as 60, or a String that can be parsed into such Integer value.
Defaults to
ElasticsearchBackendSettings.Defaults.SCROLL_TIMEOUT.- See Also:
-