Add Enterprise Search user settingsedit

Change how Enterprise Search runs by providing your own user settings. User settings are appended to the ent-search.yml configuration file for your instance and provide custom configuration options.

Some settings that could break your cluster if set incorrectly are blocked. Review the list of settings that are generally safe in cloud environments. For detailed information about Enterprise Search settings, check the Enterprise Search documentation.

To add user settings:

  1. Log in to the Elasticsearch Service Console.
  2. Find your deployment on the home page in the Elasticsearch Service card and click the gear icon to access it directly. Or, select Elasticsearch Service to go to the deployments page to view all of your deployments.

    On the deployments page you can narrow your deployments by name, ID, or choose from several other filters. To customize your view, use a combination of filters, or change the format from a grid to a list.

  3. From your deployment menu, go to the Edit page.
  4. In the Enterprise Search section, select Edit user settings. For deployments with existing user settings, you may have to expand the Edit enterprise-search.yml caret instead.
  5. Update the user settings.
  6. Select Save changes.

If a setting is not supported by Elasticsearch Service, an error message displays when you try to save your settings.

Supported Enterprise Search settingsedit

Elasticsearch Service supports the following Enterprise Search settings.

connector.crawler.security.auth.allow_http
Allow authenticated crawling of non-HTTPS URLs.
connector.crawler.content_extraction.enabled
Enable extraction of non-HTML files found during a crawl.
connector.crawler.content_extraction.mime_types
Extract files with these MIME types.
connector.crawler.http.compression.enabled
Enable/disable HTTP content (gzip/deflate) compression in Crawler requests
connector.crawler.http.default_encoding
Default encoding used for responses that do not specify a charset.
connector.crawler.http.proxy.host
HTTP proxy host to use for all web crawler connections.
connector.crawler.http.proxy.port
HTTP proxy port to use for all web crawler connections.
connector.crawler.http.proxy.protocol
The protocol to use for proxy connections (http or https). Defaults to http.
connector.crawler.http.proxy.username
The username to use for proxy authentication.
connector.crawler.http.proxy.password
The password to use for proxy authentication.
connector.crawler.security.ssl.certificate_authorities
A list of additional custom SSL certificate authority certificates to be used during crawling. Only inline certificate values are supported.
connector.crawler.security.ssl.certificate_authorities
SSL verification mode to be used for all Crawler connections: full (this is the default), certificate or none.
connector.crawler.crawl.url_queue.url_count.limit
The maximum size of the crawl frontier - the list of URLs the crawler needs to visit. The list is stored in Elasticsearch, so the limit could be increased as long as the Elasticsearch cluster has enough resources (disk space) to hold the queue index.
connector.crawler.workers.pool_size.limit
The number of parallel crawls allowed per instance of Enterprise Search.
connector.crawler.crawl.threads.limit
The number of parallel threads to use for each crawl.
connector.crawler.http.connection_timeout
The maximum period (in seconds) to wait until abortion of the request when a connection is being initiated.
connector.crawler.http.read_timeout
The maximum period (in seconds) of inactivity (in seconds) between two data packets, before the request is aborted.
connector.crawler.http.request_timeout
The maximum period (in seconds) of the entire request before the request is aborted.
connector.crawler.http.response_size.limit
The maximum size of an HTTP response (in bytes) supported by the crawler.
connector.crawler.http.redirects.limit
The maximum number of HTTP redirects before a request is failed.
connector.crawler.extraction.title_size.limit
The maximum size (in bytes) of the title field extracted from crawled pages.
connector.crawler.extraction.body_size.limit
The maximum size (in bytes) of the body field extracted from crawled pages.
connector.crawler.extraction.keywords_size.limit
The maximum size (in bytes) of the keywords field extracted from crawled pages.
connector.crawler.extraction.description_size.limit
The maximum size (in bytes) of the description field extracted from crawled pages.
connector.crawler.extraction.extracted_links_count.limit
The maximum number of links extracted from each page for further crawling.
connector.crawler.extraction.indexed_links_count.limit
The maximum number of links extracted from each page and indexed in a document.
connector.crawler.extraction.headings_count.limit
The maximum number of HTML headings (h1-h5 tags) to be extracted from each page.
connector.crawler.crawl.max_duration.limit
Maximum duration (in seconds) of a crawl before the crawler will shut down automatically.
connector.crawler.crawl.max_crawl_depth.limit
How many sequential links should the crawler follow into the site before stopping new link discovery.
connector.crawler.crawl.max_url_length.limit
Maximum length of a URL (in characters) the crawler is allowed to follow.
connector.crawler.crawl.max_url_segments.limit
Maximum number of path segments in a URL allowed to be followed by the crawler (for example, /a/b/c/d has 4).
connector.crawler.crawl.max_url_params.limit
Maximum number of query parameters in a URL allowed to be followed by the crawler (for example, /a?b=c&d=e has 2).
connector.crawler.crawl.max_unique_url_count.limit
Maximum number of unique URLs the crawler is allowed to index before it stops looking for new content and finishes the crawl automatically.

For version 8.2 and later:

feature_flag.elasticsearch_search_api
Enables the Elasticsearch Search API (Technical Preview). Use the API to pass through and execute raw Elasticsearch queries against the indices that power Enterprise Search engines.

For version 8.0 and later:

crawler.security.auth.allow_http
Allow authenticated crawling of non-HTTPS URLs.
crawler.http.compression.enabled
Enable/disable HTTP content (gzip/deflate) compression in App Search Crawler requests
crawler.http.default_encoding
Default encoding used for responses that do not specify a charset.

For version 8.3 and later:

crawler.content_extraction.enabled
Enable extraction of non-HTML files found during a crawl.
crawler.content_extraction.mime_types
Extract files with these MIME types.

For version 7.16 and later:

monitoring.reporting_enabled
Enable automatic monitoring metrics reporting to Elasticsearch through metricbeat. Defaults to false.
monitoring.reporting_period
Configure metrics reporting frequency. Defaults to 10s.
monitoring.metricsets
Configure metricsets to be reported to Elasticsearch. Defaults to all metricsets.
monitoring.index_prefix
Override the index name prefix used to index Enterprise Search metrics. Defaults to metricbeat-ent-search.
workplace_search.content_source.salesforce.enable_cases
Whether or not Salesforce and Salesforce Sandbox content sources should synchronize Case objects. Default is true.
crawler.http.proxy.host
HTTP proxy host to use for all web crawler connections.
crawler.http.proxy.port
HTTP proxy port to use for all web crawler connections.
crawler.http.proxy.protocol
The protocol to use for proxy connections (http or https). Defaults to http.
crawler.http.proxy.username
The username to use for proxy authentication.
crawler.http.proxy.password
The password to use for proxy authentication.

For version 7.15 and later:

workplace_search.content_source.sync.refresh_interval.full
The refresh interval for full sync job (in ISO 8601 Duration format). Defaults to P3D.
workplace_search.content_source.sync.refresh_interval.incremental
The refresh interval for incremental sync job (in ISO 8601 Duration format). Defaults to PT2H.
workplace_search.content_source.sync.refresh_interval.delete
The refresh interval for delete sync job (in ISO 8601 Duration format). Defaults to PT6H.
workplace_search.content_source.sync.refresh_interval.permissions
The refresh interval for permissions sync job (in ISO 8601 Duration format). Defaults to PT5M.
workplace_search.remote_sources.query_timeout
The timeout setting (in milliseconds) when querying from remote sources using the Search API. Defaults to 10000.
crawler.extraction.default_deduplication_fields
A list of default fields to be used for content hashing (deduplication). Replaces the old crawler.extraction.content_hash_include setting.

For version 7.14 and later:

crawler.security.ssl.certificate_authorities
A list of additional custom SSL certificate authority certificates to be used during crawling. Only inline certificate values are supported.
crawler.security.ssl.certificate_authorities
SSL verification mode to be used for all Crawler connections: full (this is the default), certificate or none.
kibana.preferred_auth_provider
The name of the authentication provider to use when redirecting to Kibana for authentication.
workplace_search.content_source.indexing.rules.limit
Maximum allowed indexing rules a content source can have.
workplace_search.synonyms.sets.limit
The maximum number of synonym sets for a Workplace Search instance. Defaults to 256.
workplace_search.synonyms.terms_per_set.limit
The maximum number of terms per indiviual synonym set for a Workplace Search instance. Defaults to 32.

For version 7.13 and later:

crawler.crawl.url_queue.url_count.limit
The maximum size of the crawl frontier - the list of URLs the crawler needs to visit. The list is stored in Elasticsearch, so the limit could be increased as long as the Elasticsearch cluster has enough resources (disk space) to hold the queue index.
crawler.extraction.content_hash_include
A list of fields to be used for content hashing (deduplication).

For version 7.12 and later:

workplace_search.content_source.document_size.limit
Maximum allowed document size for a content source.
workplace_search.content_source.total_fields.limit
Maximum number of fields a content source can have.
crawler.http.user_agent
Custom User-Agent header value to be used by the crawler. Replaces the old crawler.user_agent setting.
crawler.workers.pool_size.limit
The number of parallel crawls allowed per instance of Enterprise Search.
crawler.crawl.threads.limit
The number of parallel threads to use for each crawl.
crawler.http.connection_timeout
The maximum period (in seconds) to wait until abortion of the request when a connection is being initiated.
crawler.http.read_timeout
The maximum period (in seconds) of inactivity (in seconds) between two data packets, before the request is aborted.
crawler.http.request_timeout
The maximum period (in seconds) of the entire request before the request is aborted.
crawler.http.response_size.limit
The maximum size of an HTTP response (in bytes) supported by the crawler.
crawler.http.redirects.limit
The maximum number of HTTP redirects before a request is failed.
crawler.extraction.title_size.limit
The maximum size (in bytes) of the title field extracted from crawled pages.
crawler.extraction.body_size.limit
The maximum size (in bytes) of the body field extracted from crawled pages.
crawler.extraction.keywords_size.limit
The maximum size (in bytes) of the keywords field extracted from crawled pages.
crawler.extraction.description_size.limit
The maximum size (in bytes) of the description field extracted from crawled pages.
crawler.extraction.extracted_links_count.limit
The maximum number of links extracted from each page for further crawling.
crawler.extraction.indexed_links_count.limit
The maximum number of links extracted from each page and indexed in a document.
crawler.extraction.headings_count.limit
The maximum number of HTML headings (h1-h5 tags) to be extracted from each page.

For version 7.11 and later:

crawler.user_agent
Custom User-Agent header value to be used by the crawler.
crawler.crawl.max_duration.limit
Maximum duration (in seconds) of a crawl before the crawler will shut down automatically.
crawler.crawl.max_crawl_depth.limit
How many sequential links should the crawler follow into the site before stopping new link discovery.
crawler.crawl.max_url_length.limit
Maximum length of a URL (in characters) the crawler is allowed to follow.
crawler.crawl.max_url_segments.limit
Maximum number of path segments in a URL allowed to be followed by the crawler (for example, /a/b/c/d has 4).
crawler.crawl.max_url_params.limit
Maximum number of query parameters in a URL allowed to be followed by the crawler (for example, /a?b=c&d=e has 2).
crawler.crawl.max_unique_url_count.limit
Maximum number of unique URLs the crawler is allowed to index before it stops looking for new content and finishes the crawl automatically.
workplace_search.content_source.sync.thumbnails.enabled
Whether or not a content source should generate thumbnails for the documents it syncs.

For version 7.10 and later:

workplace_search.content_source.sync.max_errors
If an indexing job encounters more total errors than this value, the job will fail.
workplace_search.content_source.sync.max_consecutive_errors
If an indexing job encounters more errors in a row than this value, the job will fail.
workplace_search.content_source.sync.max_error_ratio
If an indexing job encounters an error ratio greater than this value in a given window, or overall at the end of the job, the job will fail.
workplace_search.content_source.sync.error_ratio_window_size
Configure how large of a window to consider when calculating an error ratio (check workplace_search.content_source.sync.max_error_ratio).

For version 7.9 and later:

ent_search.auth.<auth_name>.source
(7.9.2+) The origin of authenticated Enterprise Search users. <auth_name> is the name of the SAML realm as defined in Elasticsearch. Set this to elasticsearch-saml if you are adding your own custom SAML realm. Otherwise, leave this unset.
ent_search.auth.<auth_name>.order

(7.9.2+) The order in which to display this provider on the login screen. <auth_name> is the name of the SAML realm as defined in Elasticsearch.

Required when ent_search.auth.<auth_name>.source is set.

ent_search.auth.<auth_name>.description

(7.9.2+) The name to be displayed on the login screen associated with this provider. <auth_name> is the name of the SAML realm as defined in Elasticsearch.

Required when ent_search.auth.<auth_name>.source is set.

ent_search.auth.<auth_name>.icon

(7.9.2+) The URL to an icon to be displayed on the login screen associated with this provider. <auth_name> is the name of the SAML realm as defined in Elasticsearch.

Required when ent_search.auth.<auth_name>.source is set.

ent_search.auth.<auth_name>.hidden
(7.9.2+) Boolean value to determine whether or not to display this login option on the login screen. <auth_name> is the name of the SAML realm as defined in Elasticsearch. Optional when ent_search.auth.<auth_name>.source is set.
ent_search.login_assistance_message
(7.9-7.17) Adds a message to the login screen. This field supports Markdown.

For version 7.7 and later:

ent_search.auth.source
(7.7-7.9.1) The origin of authenticated Enterprise Search users. Set this to elasticsearch-saml if you are adding your own custom SAML realm. Otherwise, leave this unset.
ent_search.auth.name
(7.7-7.9.1) The name of your SAML authentication realm as defined in Elasticsearch. Required when ent_search.auth.source is set.
workplace_search.custom_api_source.document_size.limit
Maximum allowed document size for Custom API Sources (in bytes).
workplace_search.custom_api_source.total_fields.limit
Number of fields a Custom API Source can have.
app_search.engine.document_size.limit
Maximum allowed document size in App Search engines (in bytes).
app_search.engine.total_fields.limit
Number of fields an App Search engine can have.
app_search.engine.source_engines_per_meta_engine.limit
Number of source engines a meta engine can have.
app_search.engine.total_facet_values_returned.limit
Number of facet values that can be returned by a search.
app_search.engine.query.limit
Size of full-text queries that are allowed.
app_search.engine.synonyms.sets.limit
Total number of synonym sets an engine can have.
app_search.engine.synonyms.terms_per_set.limit
Total number of terms a synonym set can have.
app_search.engine.analytics.total_tags.limit
Number of analytics tags that can be associated with a single query or clickthrough.
log_level
Minimum log level. One of debug, info, warn, error, fatal or unknown. Defaults to info.

To change log level you must first enable deployment logging.