subscribers

package
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 13, 2026 License: MIT Imports: 8 Imported by: 0

Documentation

Overview

Package subscribers provides built-in event subscribers.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type LoggingSubscriber

type LoggingSubscriber struct {
	// contains filtered or unexported fields
}

LoggingSubscriber logs events as they are received.

func NewLoggingSubscriber

func NewLoggingSubscriber(logger bus.Logger) *LoggingSubscriber

NewLoggingSubscriber creates a new LoggingSubscriber.

func (*LoggingSubscriber) Handle

func (s *LoggingSubscriber) Handle(ctx context.Context, event bus.Event) error

Handle logs the received event.

type MetricsSubscriber

type MetricsSubscriber struct {
	// contains filtered or unexported fields
}

MetricsSubscriber tracks event metrics.

func NewMetricsSubscriber

func NewMetricsSubscriber() *MetricsSubscriber

NewMetricsSubscriber creates a new MetricsSubscriber.

func (*MetricsSubscriber) GetSourceCount

func (s *MetricsSubscriber) GetSourceCount(source string) int64

GetSourceCount returns the count for a specific source.

func (*MetricsSubscriber) GetStats

func (s *MetricsSubscriber) GetStats() map[string]interface{}

GetStats returns all metrics as a map.

func (*MetricsSubscriber) GetTotalCount

func (s *MetricsSubscriber) GetTotalCount() int64

GetTotalCount returns the total number of events processed.

func (*MetricsSubscriber) GetTypeCount

func (s *MetricsSubscriber) GetTypeCount(eventType bus.EventType) int64

GetTypeCount returns the count for a specific event type.

func (*MetricsSubscriber) Handle

func (s *MetricsSubscriber) Handle(ctx context.Context, event bus.Event) error

Handle increments counters for the received event.

func (*MetricsSubscriber) Reset

func (s *MetricsSubscriber) Reset()

Reset clears all counters.

type WebhookConfig

type WebhookConfig struct {
	URL           string
	Secret        string
	Timeout       time.Duration
	RetryAttempts int
	EventTypes    []bus.EventType // Empty means all events
}

WebhookConfig holds configuration for a webhook endpoint.

type WebhookSubscriber

type WebhookSubscriber struct {
	// contains filtered or unexported fields
}

WebhookSubscriber forwards events to configured webhook endpoints.

func NewWebhookSubscriber

func NewWebhookSubscriber(webhooks []WebhookConfig, logger bus.Logger) *WebhookSubscriber

NewWebhookSubscriber creates a new WebhookSubscriber.

func (*WebhookSubscriber) AddWebhook

func (s *WebhookSubscriber) AddWebhook(wh WebhookConfig)

AddWebhook adds a webhook configuration.

func (*WebhookSubscriber) Handle

func (s *WebhookSubscriber) Handle(ctx context.Context, event bus.Event) error

Handle forwards the event to all configured webhooks.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL