On This Page

Home / Search/ Get Data In/ Add Sources/Ingest Elasticsearch Data into Cribl Search

Ingest Elasticsearch Data into Cribl Search

Collect data via the Bulk API from Beats or Elastic Agents to store it in Cribl Search for fast analysis.


Before You Begin

You’ll need:

  • Cribl.Cloud Enterprise. For details, see Pricing.
  • A lakehouse engine. See how to get one at lakehouse engines.
  • Search Admin Permission, or higher. Learn who can do what at Cribl Search Permissions.
  • A Beats, Elastic Agent, or other Elasticsearch bulk API sender that can reach Cribl Search over HTTP(S).

You don’t need Cribl Stream, Edge, or Lake. (Looking for the Elasticsearch API Source in Cribl Stream instead?)

To query your Elasticsearch or OpenSearch index without moving data into Cribl Search, see Connect Cribl Search to Elasticsearch or Connect Cribl Search to OpenSearch.

1. Add an Elasticsearch API Source in Cribl Search

On the Cribl.Cloud top bar, select Products > Search > Data > Add Source > Elasticsearch API.

Describe Your Source and Set the API Endpoint

Under General, configure:

SettingDescriptionExample
IDSource ID, unique across your Cribl.Cloud Workspace.

Use letters, numbers, underscores, hyphens.
elastic_api_prod
DescriptionDescribe your Source so others know what it’s for.Ingests API from prod Beats
AddressHostname (FQDN) that your upstream sender connects to.

You’ll need this to set up your upstream sender.
search.main.foo-bar-abc123.cribl.cloud
PortNetwork port to listen on.

Keep the default unless it conflicts with another service.
9200 (default)
Elasticsearch API endpointBase path on which to listen for Elasticsearch API requests. Defaults to /.

Cribl Search automatically handles these sub-paths:
_bulk
<indexName>/_bulk
/myPath

Handles:
/myPath/_bulk
/myPath/<indexName>/_bulk

Set up Authentication

Use authentication to make sure only authorized senders can push data to your Cribl Search Source.

Under Authentication, select the Authentication type you want to use:

NoneBasicBasic (Credentials Secret)Auth Tokens

Set Up Encryption

Use TLS encryption to protect your data in transit between upstream senders and your Cribl Search Source.

Under Encrypt, select Enabled, and set the Minimum TLS version you want to accept.

TLS VersionWhen to Use
1.3Recommended. Provides the best security.
1.2Use only when connecting to older systems that don’t support TLS 1.3.
Older than 1.2Avoid if possible. These versions are no longer considered secure.

Select Save to create the Source.

2. Set Up Datatyping

Configure Datatype rules to parse, filter, and normalize your data into structured fields. We call this process Datatyping.

On the Cribl.Cloud top bar, select Products > Search > Data > Datatyping (auto). Here, you can:

See also:

3. Set Up Datasets and Dataset Rules

Configure Dataset rules to organize the parsed events into Datasets. This also determines how long the data is kept, as each Dataset has its own retention period.

On the Cribl.Cloud top bar, select Products > Search > Data > Datasets: Organize Your Data, and see Organize Your Data for details.

4. Set Up Your Elasticsearch Sender

Configure your upstream Beats, Elastic Agent, or other Elasticsearch bulk API sender to send data to Cribl Search.

You’ll need these details from your Source configuration:

Name
Example
Addresssearch.main.foo-bar-abc123.cribl.cloud
Port9200 (default)
Username / Password

Or, Token
elastic_user / ********

420

Example: Beats > Cribl Search

Edit the Beats YAML configuration file, using the following example. For details, see Elastic docs.

BasicAuth Tokens

5. See Live Data Flow

Verify that events are successfully flowing from your upstream sender into Cribl Search.

On the Cribl.Cloud top bar, select Products > Search > Data > Live Data.

Here, check for your Elasticsearch API Source. For details, see See Live Data Flow.

Next Steps

Now that your data is in Cribl Search, you can start using it. For example: