implementations

package
v0.1.4 Latest Latest
Warning

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

Go to latest
Published: Nov 8, 2019 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewNoopEmail

func NewNoopEmail() interfaces.Emailer

func NewNoopProcess

func NewNoopProcess() interfaces.Processor

func NewNoopPublish

func NewNoopPublish() interfaces.Publisher

func NewProcessor

func NewProcessor(sub pubsub.Subscriber, emailer interfaces.Emailer, scope promutils.Scope) interfaces.Processor

func NewPublisher

func NewPublisher(pub pubsub.Publisher, scope promutils.Scope) interfaces.Publisher

Types

type AwsEmailer

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

func (*AwsEmailer) SendEmail

func (e *AwsEmailer) SendEmail(ctx context.Context, email admin.EmailMessage) error

type NoopEmail

type NoopEmail struct{}

Email to use when there is no email configuration.

func (*NoopEmail) SendEmail

func (n *NoopEmail) SendEmail(ctx context.Context, email admin.EmailMessage) error

type NoopProcess

type NoopProcess struct{}

func (*NoopProcess) StartProcessing

func (n *NoopProcess) StartProcessing() error

func (*NoopProcess) StopProcessing

func (n *NoopProcess) StopProcessing() error

type NoopPublish

type NoopPublish struct{}

func (*NoopPublish) Publish

func (n *NoopPublish) Publish(ctx context.Context, notificationType string, msg proto.Message) error

type Processor

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

TODO: Add a counter that encompasses the publisher stats grouped by project and domain.

func (*Processor) StartProcessing

func (p *Processor) StartProcessing() error

Currently only email is the supported notification because slack and pagerduty both use email client to trigger those notifications. When Pagerduty and other notifications are supported, a publisher per type should be created.

func (*Processor) StopProcessing

func (p *Processor) StopProcessing() error

type Publisher

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

TODO: Add a counter that encompasses the publisher stats grouped by project and domain.

func (*Publisher) Publish

func (p *Publisher) Publish(ctx context.Context, notificationType string, msg proto.Message) error

The key is the notification type as defined as an enum.

Jump to

Keyboard shortcuts

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