Skip to main content

@backstage/plugin-search-backend-module-elasticsearch

Home > @backstage/plugin-search-backend-module-elasticsearch

A module for the search backend that implements search using ElasticSearch

Classes

Class

Description

ElasticSearchClientWrapper

A wrapper class that exposes logical methods that are conditionally fired against either a configured Elasticsearch client or a configured Opensearch client.

This is necessary because, despite its intention to be API-compatible, the opensearch client does not support API key-based authentication. This is also the sanest way to accomplish this while making typescript happy.

In the future, if the differences between implementations become unmaintainably divergent, we should split out the Opensearch and Elasticsearch search engine implementations.

ElasticSearchSearchEngine

ElasticSearchSearchEngineIndexer

Elasticsearch specific search engine indexer.

Functions

Function

Description

decodeElasticSearchPageCursor(pageCursor)

isOpenSearchCompatible(opts)

Typeguard to differentiate ElasticSearch client options which are compatible with OpenSearch vs. ElasticSearch clients. Useful when calling the ElasticSearchSearchEngine.newClient() method.

Interfaces

Interface

Description

BaseElasticSearchClientOptions

Base client options that are shared across @opensearch-project/opensearch and @elastic/elasticsearch clients.

ElasticSearchAgentOptions

ElasticSearchConnectionConstructor

ElasticSearchElasticSearchClientOptions

Options used to configure the @elastic/elasticsearch client.

They are drawn from the ClientOptions class of @elastic/elasticsearch, but are maintained separately so that this interface is not coupled to it.

ElasticSearchNodeOptions

ElasticSearchQueryTranslatorExtensionPoint

ElasticSearchTransportConstructor

OpenSearchConnectionConstructor

OpenSearchElasticSearchClientOptions

Options used to configure the @opensearch-project/opensearch client.

They are drawn from the ClientOptions class of @opensearch-project/opensearch, but are maintained separately so that this interface is not coupled to it.

OpenSearchNodeOptions

Variables

Variable

Description

_default

Search backend module for the Elasticsearch engine.

elasticsearchTranslatorExtensionPoint

Extension point used to customize the ElasticSearch query translator.

Type Aliases

Type Alias

Description

ElasticSearchAliasAction

ElasticSearchAuth

ElasticSearchClientOptions

Options used to configure the @elastic/elasticsearch client or the @opensearch-project/opensearch client, depending on the given config. It will be passed as an argument to the ElasticSearchSearchEngine.newClient() method.

ElasticSearchConcreteQuery

Search query that the elasticsearch engine understands.

ElasticSearchCustomIndexTemplate

Elasticsearch specific index template

ElasticSearchCustomIndexTemplateBody

Elasticsearch specific index template body

ElasticSearchHighlightConfig

ElasticSearchHighlightOptions

ElasticSearchIndexAction

ElasticSearchOptions

Options for instantiate ElasticSearchSearchEngine

ElasticSearchQueryTranslator

Elasticsearch specific query translator.

ElasticSearchQueryTranslatorOptions

Options available for the Elasticsearch specific query translator.

ElasticSearchSearchEngineIndexerOptions

Options for instantiate ElasticSearchSearchEngineIndexer

OpenSearchAuth