ElasticSearchClientServiceImpl¶
Description¶
A controller service for accessing an Elasticsearch client, using the Elasticsearch (low-level) REST Client.
Properties¶
In the list below required Properties are shown with an asterisk (*). Other properties are considered optional. The table also indicates any default values, and whether a property supports the NiFi Expression Language.
Display Name |
API Name |
Default Value |
Allowable Values |
Description |
---|---|---|---|---|
API Key * |
api-key |
Encoded API key. |
||
API Key ID * |
api-key-id |
Unique identifier of the API key. |
||
Authorization Scheme * |
authorization-scheme |
BASIC |
|
Authorization Scheme used for optional authentication to Elasticsearch. |
Charset * |
el-cs-charset |
UTF-8 |
The charset to use for interpreting the response from Elasticsearch. |
|
Connect timeout * |
el-cs-connect-timeout |
5000 |
Controls the amount of time, in milliseconds, before a timeout occurs when trying to connect. |
|
Enable Compression * |
el-cs-enable-compression |
false |
|
Whether the REST client should compress requests using gzip content encoding and add the “Accept-Encoding: gzip” header to receive compressed responses |
HTTP Hosts * |
el-cs-http-hosts |
A comma-separated list of HTTP hosts that host Elasticsearch query nodes.The HTTP Hosts should be valid URIs including protocol, domain and port for each entry.For example “https://elasticsearch1:9200, https://elasticsearch2:9200”.Note that the Host is included in requests as a header (typically including domain and port, e.g. elasticsearch:9200). |
||
Node Selector * |
el-cs-node-selector |
ANY |
|
Selects Elasticsearch nodes that can receive requests. Used to keep requests away from dedicated Elasticsearch master nodes |
OAuth2 Access Token Provider * |
el-cs-oauth2-token-provider |
The OAuth2 Access Token Provider used to provide JWTs for Bearer Token Authorization with Elasticsearch. |
||
Password * |
el-cs-password |
The password to use with XPack security. |
||
Path Prefix |
el-cs-path-prefix |
Sets the path’s prefix for every request used by the http client. For example, if this is set to “/my/path”, then any client request will become “/my/path/” + endpoint. In essence, every request’s endpoint is prefixed by this pathPrefix. The path prefix is useful for when Elasticsearch is behind a proxy that provides a base path or a proxy that requires all paths to start with ‘/’; it is not intended for other purposes and it should not be supplied in other scenarios |
||
Run As User |
el-cs-run-as-user |
The username to impersonate within Elasticsearch. |
||
Send Meta Header * |
el-cs-send-meta-header |
true |
|
Whether to send a “X-Elastic-Client-Meta” header that describes the runtime environment. It contains information that is similar to what could be found in User-Agent. Using a separate header allows applications to use User-Agent for their own needs, e.g. to identify application version or other environment information |
Sniff Cluster Nodes * |
el-cs-sniff-cluster-nodes |
false |
|
Periodically sniff for nodes within the Elasticsearch cluster via the Elasticsearch Node Info API. If Elasticsearch security features are enabled (default to “true” for 8.x+), the Elasticsearch user must have the “monitor” or “manage” cluster privilege to use this API.Note that all HTTP Hosts (and those that may be discovered within the cluster using the Sniffer) must use the same protocol, e.g. http or https, and be contactable using the same client settings. Finally the Elasticsearch “network.publish_host” must match one of the “network.bind_host” list entries see https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-network.html for more information |
Sniff on Failure * |
el-cs-sniff-failure |
false |
|
Enable sniffing on failure, meaning that after each failure the Elasticsearch nodes list gets updated straight away rather than at the following ordinary sniffing round |
Sniffer Failure Delay * |
el-cs-sniffer-failure-delay |
1 min |
Delay between an Elasticsearch request failure and updating available Cluster nodes using the Sniffer |
|
Sniffer Interval * |
el-cs-sniffer-interval |
5 mins |
Interval between Cluster sniffer operations |
|
Sniffer Request Timeout * |
el-cs-sniffer-request-timeout |
1 sec |
Cluster sniffer timeout for node info requests |
|
Read timeout * |
el-cs-socket-timeout |
60000 |
Controls the amount of time, in milliseconds, before a timeout occurs when waiting for a response. |
|
SSL Context Service |
el-cs-ssl-context-service |
The SSL Context Service used to provide client certificate information for TLS/SSL connections. This service only applies if the Elasticsearch endpoint(s) have been secured with TLS/SSL. |
||
Strict Deprecation * |
el-cs-strict-deprecation |
false |
|
Whether the REST client should return any response containing at least one warning header as a failure |
Suppress Null/Empty Values * |
el-cs-suppress-nulls |
always-suppress |
|
Specifies how the writer should handle null and empty fields (including objects and arrays) |
Username * |
el-cs-username |
The username to use with XPack security. |
||
JWT Shared Secret * |
jwt-shared-secret |
JWT realm Shared Secret. |
||
Proxy Configuration Service |
proxy-configuration-service |
Specifies the Proxy Configuration Controller Service to proxy network requests. Supported proxies: HTTP |
State management¶
This component does not store state.
Restricted¶
This component is not restricted.
System Resource Considerations¶
This component does not specify system resource considerations.