LogicPublisher
faststream.kafka.publisher.usecase.LogicPublisher #
LogicPublisher(
config: KafkaPublisherConfig,
specification: PublisherSpecification[Any, Any],
)
Bases: PublisherUsecase
A class to publish messages to a Kafka topic.
Source code in faststream/kafka/publisher/usecase.py
request async #
request(
message: SendableMessage,
topic: str = "",
*,
key: bytes | Any | None = None,
partition: int | None = None,
timestamp_ms: int | None = None,
headers: dict[str, str] | None = None,
correlation_id: str | None = None,
timeout: float = 0.5,
) -> KafkaMessage
Send a request message to Kafka topic.
| PARAMETER | DESCRIPTION |
|---|---|
message | Message body to send. TYPE: |
topic | Topic where the message will be published. TYPE: |
key | A key to associate with the message. Can be used to determine which partition to send the message to. If partition is |
partition | Specify a partition. If not set, the partition will be selected using the configured TYPE: |
timestamp_ms | Epoch milliseconds (from Jan 1 1970 UTC) to use as the message timestamp. Defaults to current time. TYPE: |
headers | Message headers to store metainformation. |
correlation_id | Manual message correlation_id setter. correlation_id is a useful option to trace messages. TYPE: |
timeout | Timeout to send RPC request. TYPE: |
| RETURNS | DESCRIPTION |
|---|---|
KafkaMessage | The response message. TYPE: |
Source code in faststream/kafka/publisher/usecase.py
flush async #
publish abstractmethod async #
Public method to publish a message.
Should be called by user only broker.publisher(...).publish(...).