# Functions
AddDefaultJitter adds default jitter to provided duration.
AddJitter adds random jitter in the range (-jitter, +jitter) to provided duration.
NewExponentialRetrier returns a new ExponentialRetrier instance.
NewLogger returns a new logger instance that uses 'github.com/sirupsen/logrus' under the covers.
NewMetrics returns a new metrics instance that uses 'github.com/rcrowley/go-metrics' under the covers.
NewNullLogger returns the logger instance used to disable all logging.
NewNullMetrics returns the metrics instance used to disable all metrics collection.
NewThresholdBreaker returns a new ThresholdBreaker instance that allows errors up to threshold inside the interval.
Self represents the Factory that returns the instance when invoked.
# Constants
LevelStreaming is the compaction level used for live/streaming segments.
No description provided by the author
No description provided by the author
# Variables
DefaultJitter is the default jitter percentage.
DefaultKafkaBreaker is the default breaker used to track Kafka errors.
DefaultKafkaRetrier is the default retrier used for Kafka operations.
DefaultLogger is the logger used by the replicator.
DefaultMetrics is the metrics instance used by the replicator.
DefaultS3Breaker is the default breaker used to track AWS S3 errors.
DefaultS3Retrier is the default retrier used for AWS S3 operations.
DefaultSQSBreaker is the default breaker used to track AWS S3 errors.
No description provided by the author
No description provided by the author
# Structs
No description provided by the author
ExponentialRetrier implements the retry with exponential backoff resiliency pattern.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
SegmentEventRequest is used to implement the chain-of-responsibility design pattern for handling segment events.
SegmentInfo provides contextual information for the corresponding segment.
No description provided by the author
ThresholdBreaker implements a simple circuit breaker that triggers when the error rate reaches the threshold.
# Interfaces
Breaker implements a simple circuit breaker interface.
CheckpointStore represents the checkpoint storage used by ingress controller.
Consumer represents the consumer operations.
Factory is used to supply the required component dependency.
Gauge is the interface for a gauge metric.
Lifecycle is the interface defining methods for instance lifecycle control.
Logger provides basic logging functionality.
Meter is the interface for a meter metric.
Metrics is the provider for various metric types.
Producer represents the producer operations.
PubSub represents the publish-subscribe operations.
Retrier will execute the provided work function until success Returns true if the work was executed successfully.
SegmentEventSource represents source for segment events.
SegmentFormat represents the segment data serialization format.
SegmentReader represents the segment reader operations.
SegmentStore represents the segment storage.
SegmentWriter represents the segment writer operations.
Timer is the interface for a timer metric.
# Type aliases
Fields type is used with WithFields method.
No description provided by the author
TopicEOF signals that PubSub consumer reached end of topic.