Elasticsearch LogExporter

Elasticsearch LogExporter

Certified
Enterprise Edition

Bulk export logs to Elasticsearch

Streams execution logs to an Elasticsearch index via the Bulk API. Uses rendered indexName and chunk for batching (default 1000 records per bulk request); document IDs are derived from log timestamps, so ensure index mappings accept the task log schema.

yaml
type: io.kestra.plugin.ee.elasticsearch.LogExporter

Ship logs to Elasticsearch

yaml
id: log_shipper
namespace: company.team

triggers:
  - id: daily
    type: io.kestra.plugin.core.trigger.Schedule
    cron: "@daily"

tasks:
  - id: logSync
    type: io.kestra.plugin.ee.core.log.LogShipper
    logLevelFilter: INFO
    batchSize: 1000
    lookbackPeriod: P1D
    logExporters:
      - id: ElasticsearchLogExporter
        type: io.kestra.plugin.ee.elasticsearch.LogExporter
        connection:
          hosts:
            - "http://localhost:9200/"
        indexName: "logs"
Properties

Elasticsearch connection settings

Hosts, authentication, headers, and TLS options reused for all requests.

Definitions
hosts*Requiredarray
SubTypestring
Min items1

Elasticsearch hosts

HTTP/HTTPS endpoints with scheme and port, e.g. https://elasticsearch.com: 9200

basicAuth

Basic auth configuration

passwordstring

Basic auth password

usernamestring

Basic auth username

headersarray
SubTypestring

Extra HTTP headers

Rendered Name: Value pairs sent on every request, e.g. Authorization: Token XYZ

pathPrefixstring

Request path prefix

Prefixes every endpoint (e.g. /my/base) for clusters behind a proxy that requires a base path

strictDeprecationModebooleanstring

Fail on deprecation warnings

If true, any response with Elasticsearch warning headers is treated as an error

targetServerVersionintegerstring
Default8

Target Elasticsearch server major version

Major version used for compatibility headers (Accept and Content-Type). Set to 8 for Elasticsearch 8 clusters or 9 for Elasticsearch 9 clusters.

trustAllSslbooleanstring

Trust all SSL certificates

WARNING — SECURITY RISK: When enabled, disables BOTH TLS certificate validation (TrustAllStrategy) AND hostname verification (NoopHostnameVerifier). This makes the connection vulnerable to man-in-the-middle attacks and must never be used in production. Prefer configuring a proper truststore for self-signed certificates instead.

Validation RegExp^[a-zA-Z0-9][a-zA-Z0-9_-]*
Min length1

Target index name

Rendered per execution; index must accept the task log schema.

Default1000

Bulk chunk size

Number of log documents per bulk request (default 1000); tune for throughput versus memory.

The number of records sent to Elasticsearch

The number of requests sent to Elasticsearch

The duration of the requests sent to Elasticsearch