Skip to main content

kafka_backup_core/
lib.rs

1//! Kafka Backup Core Library
2//!
3//! This crate provides the core functionality for backing up and restoring
4//! Kafka topics to/from various storage backends.
5
6pub mod backup;
7pub mod circuit_breaker;
8pub mod compression;
9pub mod config;
10pub mod error;
11pub mod health;
12pub mod kafka;
13pub mod manifest;
14pub mod metrics;
15pub mod offset_store;
16pub mod restore;
17pub mod segment;
18pub mod storage;
19
20pub use circuit_breaker::{CircuitBreaker, CircuitBreakerConfig, CircuitState};
21pub use config::{
22    Config, MetricsConfig, OffsetStorageBackend, OffsetStorageConfig, OffsetStrategy,
23    RestoreOptions,
24};
25pub use error::{Error, Result};
26pub use health::{HealthCheck, HealthStatus};
27pub use kafka::{
28    CommittedOffset, ConsumerGroup, ConsumerGroupDescription, ConsumerGroupMember, TimestampOffset,
29};
30pub use manifest::{
31    BackupManifest, BackupRecord, ConsumerGroupOffset, ConsumerGroupOffsets, DryRunPartitionReport,
32    DryRunReport, DryRunTopicReport, OffsetMapping, OffsetMappingEntry, OffsetPair,
33    PartitionBackup, PartitionRestoreReport, RecordHeader, RestoreCheckpoint, RestoreReport,
34    SegmentMetadata, TopicBackup, TopicRestoreReport,
35};
36pub use metrics::{
37    create_instrumented_backend, ErrorType, InstrumentedStorageBackend, MetricsReport,
38    MetricsServer, MetricsServerConfig, OperationStatus, PerformanceMetrics, PrometheusMetrics,
39    StorageOperation, TimerGuard,
40};
41pub use offset_store::{OffsetStore, OffsetStoreConfig, SqliteOffsetStore};
42pub use restore::{
43    engine::{RestoreEngine, RestoreProgress},
44    offset_automation::{
45        BulkOffsetReset, BulkOffsetResetConfig, BulkOffsetResetReport, BulkResetStatus,
46        GroupResetOutcome, OffsetMapping as BulkOffsetMapping, OffsetResetBatch,
47        OffsetResetMetrics, PartitionError, PerformanceStats,
48    },
49    offset_reset::{
50        GroupResetPlan, GroupResetResult, OffsetResetExecutor, OffsetResetPlan,
51        OffsetResetPlanBuilder, OffsetResetReport, OffsetResetStrategy, PartitionResetPlan,
52    },
53    offset_rollback::{
54        reset_offsets_with_rollback, rollback_offset_reset, snapshot_current_offsets,
55        verify_rollback, GroupOffsetState, OffsetMismatch, OffsetSnapshot, OffsetSnapshotMetadata,
56        OffsetSnapshotStorage, PartitionOffsetState, RestoreWithRollbackResult,
57        RestoreWithRollbackStatus, RollbackResult, RollbackStatus, StorageBackendSnapshotStore,
58        VerificationResult,
59    },
60    three_phase::{Phase1ValidationReport, ThreePhaseReport, ThreePhaseRestore},
61};