Apache Iggy RealtimeTrigger

Apache Iggy RealtimeTrigger

Certified

Trigger on real-time Apache Iggy messages

Reacts to Apache Iggy messages in real-time by creating one execution per message as soon as it arrives on the stream and topic. Designed for UTF-8 text and JSON payloads; arbitrary binary payloads are not supported. Consumer offsets are committed after the message is emitted downstream when autoCommit is enabled.

yaml
type: io.kestra.plugin.iggy.RealtimeTrigger

Consume Apache Iggy messages in real-time and create an execution per message

yaml
id: iggy_realtime_trigger
namespace: company.team
triggers:
  - id: realtime_watch
    type: io.kestra.plugin.iggy.RealtimeTrigger
    host: iggy.example.com
    port: 8090
    username: "{{ secret('IGGY_USERNAME') }}"
    password: "{{ secret('IGGY_PASSWORD') }}"
    stream: telemetry
    topic: sensors
    consumerId: "1"
    strategy: Next
tasks:
  - id: log_message
    type: io.kestra.plugin.core.log.Log
    message: "Received sensor data: {{ trigger.payload }} (id={{ trigger.id }}, offset={{ trigger.offset }})"
Properties

Server host

Hostname or IP address of the Apache Iggy server.

Stream identifier or name

Name or ID of the Apache Iggy stream to consume messages from.

Topic identifier or name

Name or ID of the Apache Iggy topic to consume messages from.

Defaultfalse

Specifies whether a trigger is allowed to start a new execution even if a previous run is still in progress.

Defaulttrue

Auto-commit offsets

Whether to automatically commit the consumer offset of processed messages. Defaults to true.

Default50

Batch size

Maximum messages fetched per poll. Must be greater than or equal to 1. Defaults to 50.

Default1

Consumer ID or Name

Identifier of the consumer used to track offsets. Defaults to '1'.

Offset or Timestamp value

Starting offset or timestamp when strategy is Offset or Timestamp.

Partition ID

Optional partition ID to consume from.

Authentication password

Password for authentication.

DefaultPT1S

Poll interval duration

Wait duration between empty poll attempts. Defaults to PT1S.

Default8090

Server port

Port of the Apache Iggy server. Defaults to 8090 for TCP and 3000 for HTTP.

SubTypestring
Possible Values
CREATEDSUBMITTEDRUNNINGPAUSEDRESTARTEDKILLINGSUCCESSWARNINGFAILEDKILLEDCANCELLEDQUEUEDRETRYINGRETRIEDSKIPPEDBREAKPOINTRESUBMITTED

List of execution states after which a trigger should be stopped (a.k.a. disabled).

DefaultNext
Possible Values
OffsetTimestampFirstLastNext

Polling strategy kind

Polling strategy: Offset, Timestamp, First, Last, or Next. Defaults to Next.

Defaultfalse

Use TLS

Whether to enable TLS encryption for the connection. Defaults to false.

Personal access token

Personal access token (PAT) for token-based authentication.

DefaultTCP
Possible Values
TCPHTTP

Transport protocol

Transport protocol to use: TCP (default) or HTTP.

Authentication username

Username for authentication.

Defaulttrue

A condition that determines whether the trigger should run.

A Pebble expression evaluated at trigger time. The trigger fires only when the expression evaluates to a truthy value (true, a non-empty string, a non-zero number). Use this to gate trigger execution on dynamic runtime values such as execution labels, flow variables, or environment conditions.

SubTypestring

Message headers

Headers associated with the consumed message.

Message ID

Unique ID of the consumed message.

Message offset

Offset of the message within the partition.

Partition ID

Partition ID from which the message was consumed.

Message payload

Payload of the consumed message as a UTF-8 string. Designed for text and JSON payloads; arbitrary binary payloads are not supported.

Stream identifier

Stream from which the message was consumed.

Formatdate-time

Message timestamp

Timestamp when the message was received by the broker.

Topic identifier

Topic from which the message was consumed.