Skip to main content

Crate queuerious_lapin

Crate queuerious_lapin 

Source
Expand description

Queuerious SDK adapter for lapin (RabbitMQ).

Wraps lapin::Consumer to automatically report job lifecycle events (started, completed, failed, retrying) to the Queuerious platform.

§Quick Start

use queuerious::QueuriousClient;
use queuerious_lapin::TrackedConsumer;
use std::sync::Arc;

let client = Arc::new(
    QueuriousClient::builder()
        .api_key("qk_your_key")
        .build()?
);

let consumer = channel.basic_consume(
    "my-queue", "my-consumer",
    lapin::options::BasicConsumeOptions::default(),
    lapin::types::FieldTable::default(),
).await?;

let mut tracked = TrackedConsumer::new(consumer, "my-queue", client);

// Use next_tracked() for full lifecycle tracking.
while let Some(delivery) = tracked.next_tracked().await {
    let delivery = delivery?;
    // Process message...
    delivery.ack(lapin::options::BasicAckOptions::default()).await?;
}

Re-exports§

pub use channel_factory::ChannelFactory;
pub use channel_factory::StaticConnectionFactory;

Modules§

channel_factory
Channel factory abstraction for durable AMQP channel management.

Structs§

LapinAdapterConfig
Configuration for the Queuerious lapin adapter.
TrackedConsumer
A wrapped lapin::Consumer that automatically reports job lifecycle events.
TrackedDelivery
A delivery from RabbitMQ that automatically reports events on ack/nack/reject.

Enums§

TrackedConsumerError
Errors from the tracked consumer.

Functions§

extract_default_metadata
Extracts default metadata from AMQP message properties and delivery info.