Skip to content

audit-archiver

audit-archiver consumes audit log messages from the Kafka topics that ingress-rpc writes to and archives them to S3-compatible storage for long-term retention, debugging, and compliance.

The archiver runs a configurable pool of workers that consume messages from Kafka topics and write them in batches to S3:

Kafka topics → audit-archiver (worker pool) → S3 bucket

The service supports a noop-archive mode for testing where messages are consumed and logged but not written to S3.

FeatureDescription
Worker poolConfigurable pool of up to 80 concurrent workers
S3 archivalWrites audit logs to S3-compatible object storage
Noop modenoop-archive mode for testing without S3 writes
MetricsExposes Prometheus metrics on port 9002
Batch processingGroups messages into batches for efficient writes
PortProtocolPurpose
9002HTTPPrometheus metrics
  • audit-archiver-lib — Core archival logic
  • rdkafka — Kafka consumer
  • aws-sdk-s3 — S3 client
  • tokio — Async runtime
Terminal window
cargo build --bin audit-archiver --release
Terminal window
./target/release/audit-archiver [OPTIONS]