Elasticsearch
Elasticsearch connector allows querying Elasticsearch clusters using their native REST API.
Config Schema
| Field | Type | Required | Description |
|---|---|---|---|
| type | string | yes | constant: elasticsearch |
| hosts | string[] | yes | List of Elasticsearch nodes (e.g., [“http://localhost:9200”]) |
| user | string | no | Username for authentication |
| password | string | no | Password for authentication |
| api_key | string | no | API key for authentication (alternative to username/password) |
| cloud_id | string | no | Cloud ID for Elastic Cloud deployments |
| index | string | no | Default index to query |
| tls_verify | boolean | no | Verify TLS certificates (default: true) |
| conn_string | string | no | Direct connection string |
Config example:
connection: type: elasticsearch hosts: - http://localhost:9200 - http://es-node2:9200 user: elastic password: secret index: my_index tls_verify: trueOr as alternative with direct connection string:
connection: type: elasticsearch conn_string: https://elastic:secret@localhost:9200Authentication Methods
The connector supports multiple authentication methods:
- Basic Authentication (username/password)
- API Key Authentication
- No Authentication (for development)
For Elastic Cloud deployments, you can use the cloud_id parameter instead of hosts:
connection: type: elasticsearch cloud_id: deployment:dXMtZWFzdC0xLmF3cy5mb3VuZC5pbyQ0ZmE... api_key: your_api_keyNotes
- The connector uses the official Elasticsearch Go client
- For high availability, specify multiple hosts - the client will automatically handle failover
- TLS is required for production deployments
- When using API keys, both username and password should be omitted
- The index parameter is optional but recommended to set a default index for queries
- Supports Elasticsearch version 7.x and above