Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RedactSensitiveData ¶
RedactSensitiveData redacts sensitive information from log messages This prevents tokens, secrets, and keys from being logged
Types ¶
type Deduplicator ¶
type Deduplicator struct {
// contains filtered or unexported fields
}
Deduplicator implements event deduplication using LRU cache
func NewDeduplicator ¶
func NewDeduplicator(window, cleanupInt time.Duration) *Deduplicator
NewDeduplicator creates a new event deduplicator
func (*Deduplicator) Check ¶
func (d *Deduplicator) Check(key string) bool
Check checks if an event is duplicate Returns true if duplicate, false if new
func (*Deduplicator) Size ¶
func (d *Deduplicator) Size() int
Size returns the current cache size (for testing)
type KeyStrategy ¶
type KeyStrategy interface {
// GenerateKey generates a deduplication key from event data
GenerateKey(eventData map[string]any) string
}
KeyStrategy defines the interface for generating deduplication keys
type SlackKeyStrategy ¶
type SlackKeyStrategy struct{}
SlackKeyStrategy implements KeyStrategy for Slack events
func NewSlackKeyStrategy ¶
func NewSlackKeyStrategy() *SlackKeyStrategy
NewSlackKeyStrategy creates a new Slack key strategy
func (*SlackKeyStrategy) GenerateKey ¶
func (s *SlackKeyStrategy) GenerateKey(eventData map[string]any) string
GenerateKey generates a deduplication key for Slack events Format: {platform}:{event_type}:{channel}:{event_ts}