View Source API Reference kafka_ex v1.0.0-rc.1

Modules

KafkaEx Application and Worker Management

The primary Kafka client API for KafkaEx v1.0+

Behaviour for modules using KafkaEx.API.

Builds and validates SASL authentication config for KafkaEx.

Behaviour for SASL authentication mechanisms.

SASL authentication orchestrator for KafkaEx.

Behaviour defining the codec interface for SASL protocol messages.

SASL/OAUTHBEARER mechanism for AWS MSK IAM authentication.

SASL/OAUTHBEARER mechanism for Kafka (KIP-255, KIP-342).

SASL/PLAIN mechanism for Kafka.

SASL/SCRAM mechanism for Kafka (SCRAM-SHA-256/512).

Version compatibility checker for SASL authentication.

SCRAM auth flow (built-in)

Kayrock-compatible KafkaEx.Server implementation

This module represents kafka error as a struct with code and metadata

Defines node selector functions and macros

This module is used to build request for KafkaEx.Client. It's main decision point which protocol to use for building request and what is required version.

This module is used to parse response from KafkaEx.Client. It's main decision point which protocol to use for parsing response

Encapsulates what we know about a broker and our connection.

Encapsulates what we know about the state of a Kafka broker cluster

Information about a topic partition.

Encapsulates what we know about a topic

Represents a specific partition of a Kafka topic.

Configuration module for KafkaEx.

A process that manages membership in a Kafka consumer group.

GenServer to send heartbeats to the broker

Manages membership in a Kafka consumer group.

Contains typespecs and reference algorithms for assigning partitions

A behaviour module for implementing a Kafka consumer.

A supervisor for managing GenConsumer processes that are part of a consumer group.

Raised when joining a consumer group fails with an unrecoverable error.

Raised when joining a consumer group fails after exhausting all retry attempts.

Represents the API versions supported by a Kafka broker.

A detailed description of a single consumer group in the cluster.

Information about a member of a consumer group.

The current assignment for a consumer group member.

A topic-partition assignment for a consumer group member.

Represents the result of a CreateTopics API call.

Represents the result of creating a single topic.

Represents the result of a DeleteTopics API call.

Represents the result of deleting a single topic.

Represents the result of a Fetch operation from Kafka.

Represents a single record fetched from Kafka.

This module represents FindCoordinator response from Kafka.

Kafka message header (key-value pair).

This module represents Heartbeat response from Kafka.

This module represents JoinGroup response from Kafka.

Represents a member in the JoinGroup response.

This module represents LeaveGroup response from Kafka.

This module represents Offset value coming from Kafka

This module represents Offset value for a specific partition.

Container for a committed offset with optional metadata.

Metadata about a record that has been acknowledged by the server.

This module represents SyncGroup response from Kafka.

Raised when periodic metadata updates fail after exhausting all retry attempts.

Behaviour for any network client. Created mainly to allow mocking request & responses in unit tests.

KafkaEx implementation of Client used to connect to Kafka Broker

This module handle all socket related operations.

Behaviour definition for partitioners that assign partitions for produce requests.

Default partitioner implementation.

Legacy default partitioner implementation.

This module handles ApiVersions request & response parsing.

This protocol is used to build ApiVersions requests.

This protocol is used to parse ApiVersions responses.

Shared helper functions for parsing ApiVersions responses across protocol versions.

This module handles CreateTopics request & response parsing. Request is built using Kayrock protocol, response is parsed to native KafkaEx structs.

This protocol is used to build CreateTopics requests.

Shared helper functions for building CreateTopics requests across all versions.

This protocol is used to parse CreateTopics responses.

Shared helper functions for parsing CreateTopics responses across all versions.

Protocol definitions for DeleteTopics API.

Protocol for building DeleteTopics requests.

Shared helper functions for building DeleteTopics requests across all versions.

Protocol for parsing DeleteTopics responses.

Shared helper functions for parsing DeleteTopics responses across all versions.

This module handles Describe Groups request & response parsing. Request is built using Kayrock protocol, response is parsed to native KafkaEx structs.

This protocol is used to build Describe Groups requests.

Shared helper functions for building DescribeGroups requests across all versions.

This protocol is used to parse Describe Groups responses.

Shared helper functions for parsing DescribeGroups responses across all versions (V0-V5).

This module handles Fetch request & response parsing. Request is built using Kayrock protocol, response is parsed to native KafkaEx structs.

This protocol is used to build Fetch requests.

Shared utility functions for building Fetch requests.

This protocol is used to parse Fetch responses.

Shared utility functions for parsing Fetch responses.

This module handles FindCoordinator request & response parsing. Request is built using Kayrock protocol, response is parsed to native KafkaEx structs.

This protocol is used to build FindCoordinator requests.

Shared utility functions for building FindCoordinator requests.

This protocol is used to parse FindCoordinator responses.

Shared utility functions for parsing FindCoordinator responses.

This module handles Heartbeat request & response parsing. Request is built using Kayrock protocol, response is parsed to native KafkaEx structs.

This protocol is used to build Heartbeat requests.

Shared helper functions for building Heartbeat requests across all versions.

This protocol is used to parse Heartbeat responses.

Shared helper functions for parsing Heartbeat responses across all versions (V0-V4).

This module handles JoinGroup request & response parsing. Request is built using Kayrock protocol, response is parsed to native KafkaEx structs.

This protocol is used to build JoinGroup requests.

Shared helper functions for building JoinGroup requests across all versions.

This protocol is used to parse JoinGroup responses.

Shared helper functions for parsing JoinGroup responses across all versions.

This module handles LeaveGroup request & response parsing. Request is built using Kayrock protocol, response is parsed to native KafkaEx structs.

This protocol is used to build LeaveGroup requests.

Shared helper functions for building LeaveGroup requests across all versions.

This protocol is used to parse LeaveGroup responses.

Shared helper functions for parsing LeaveGroup responses across all versions (V0-V4).

This module handles List Offsets request & response parsing. Request is built using Kayrock protocol, response is parsed to native KafkaEx structs.

This protocol is used to build Lists Offsets request.

Shared utility functions for building ListOffsets requests.

This protocol is used to parse Lists Offsets response.

Shared helper functions for parsing ListOffsets responses across all versions.

This module handles Metadata request & response parsing.

This protocol is used to build Metadata requests.

Helper functions for building Metadata requests across different protocol versions.

This protocol is used to parse Metadata responses.

Helper functions for parsing Metadata responses across different protocol versions.

This module handles Offset Commit request & response parsing. Request is built using Kayrock protocol, response is parsed to native KafkaEx structs.

This protocol is used to build Offset Commit requests

Shared helper functions for building OffsetCommit requests across all versions.

This protocol is used to parse Offset Commit responses

Shared helper functions for parsing OffsetCommit responses across all versions (V0-V8).

This module handles Offset Fetch request & response parsing. Request is built using Kayrock protocol, response is parsed to native KafkaEx structs.

This protocol is used to build Offset Fetch requests.

Shared helper functions for building OffsetFetch requests across all versions.

This protocol is used to parse Offset Fetch responses.

Shared helper functions for parsing OffsetFetch responses across all versions.

This module handles Produce request & response parsing. Request is built using Kayrock protocol, response is parsed to native KafkaEx structs.

This protocol is used to build Produce requests.

Shared helper functions for building Produce requests across all versions.

This protocol is used to parse Produce responses.

Shared utility functions for parsing Produce responses.

Shared helper functions for parsing protocol responses.

This module handles SyncGroup request & response parsing. Request is built using Kayrock protocol, response is parsed to native KafkaEx structs.

This protocol is used to build SyncGroup requests.

Shared helper functions for building SyncGroup requests across all versions.

This protocol is used to parse SyncGroup responses.

Shared helper functions for parsing SyncGroup responses across all versions (V0-V4).

This module handles Kayrock request & response handling & parsing. Once Kafka Ex v1.0 is released, this module will be renamed to KayrockProtocol and will become a separated package.

Utility module that provides Murmur hashing algorithm.

Unified retry logic with exponential backoff for KafkaEx operations.

KafkaEx.Types This module contains basic types shared between KafkaEx modules

Raised when syncing a consumer group fails.

Telemetry events emitted by KafkaEx.