FireX Blaze

FireX Blaze is a lightweight process that receives Celery event data and publishes it to a Kafka bus.

The implementation is distributed as part of firexapp while retaining the firex_blaze import namespace, firex_blaze command, and Blaze tracking service entry point.

API Reference

Process events from Celery and put them on a kafka bus.

class firex_blaze.blaze_event_consumer.BlazeKafkaSenderThread(celery_app, run_metadata: RunMetadata, config: BlazeSenderConfig, logs_url: str, max_retry_attempts: int | None = None, receiver_ready_file: str | None = None, recording_file: str | None = None)[source]

Captures Celery events and puts them on a Kafka bus.

class firex_blaze.blaze_event_consumer.KafkaSenderThread(celery_app, run_metadata: RunMetadata, config: BlazeSenderConfig, max_retry_attempts: int | None = None, receiver_ready_file: str | None = None, recording_file: str | None = None, partition: int | None = None)[source]
classmethod get_kafka_producer(config: BlazeSenderConfig) Producer[source]

Create confluent-kafka Producer with retry logic.

exception firex_blaze.blaze_event_consumer.NoNameForEvent[source]
firex_blaze.blaze_event_consumer.send_kafka_mssg(kafka_producer: Producer, kafka_mssg: dict[str, Any], kafka_topic: str, firex_id: str, partition: int | None = None)[source]

Send message using confluent-kafka Producer.

Utility functions for the firex_blaze package.

class firex_blaze.blaze_helper.BlazeSenderConfig(kafka_topic: str, kafka_bootstrap_servers: list[str], max_kafka_connection_retries: int, security_protocol: str = 'PLAINTEXT', sasl_mechanism: str | None = None, sasl_oauthbearer_method: str | None = None, sasl_oauthbearer_client_id: str | None = None, sasl_oauthbearer_client_secret: str | None = None, sasl_oauthbearer_token_endpoint_url: str | None = None, ssl_ca_location: str | None = None)[source]
class firex_blaze.blaze_launcher.FireXBlazeLauncher[source]