opsgenie2

package
v1.7.4 Latest Latest
Warning

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

Go to latest
Published: Apr 23, 2024 License: MIT Imports: 14 Imported by: 40

Documentation

Index

Constants

View Source
const DefaultOpsGenieAPIURL = "https://api.opsgenie.com/v2/alerts"
View Source
const DefaultOpsGenieRecoveryAction = "notes"

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	// Whether to enable OpsGenie integration.
	Enabled bool `toml:"enabled" override:"enabled"`
	// The OpsGenie API key.
	APIKey string `toml:"api-key" override:"api-key,redact"`
	// The default Teams, can be overridden per alert.
	Teams []string `toml:"teams" override:"teams"`
	// The default Teams, can be overridden per alert.
	Recipients []string `toml:"recipients" override:"recipients"`
	// The OpsGenie API URL, should not need to be changed.
	URL string `toml:"url" override:"url"`
	// The OpsGenie Recovery action, may be one of:
	//    * notes -- add note on recovery
	//    * close -- close alert on recovery
	RecoveryAction string `toml:"recovery_action" override:"recovery_action"`
	// Whether every alert should automatically go to OpsGenie.
	Global bool `toml:"global" override:"global"`
	// Whether to use event details as OpsGenie alert description.
	Details bool `toml:"details" override:"details"`
}

func NewConfig

func NewConfig() Config

func (Config) Validate

func (c Config) Validate() error

type Diagnostic

type Diagnostic interface {
	WithContext(ctx ...keyvalue.T) Diagnostic

	Error(msg string, err error)
}

type HandlerConfig

type HandlerConfig struct {
	// OpsGenie Teams.
	TeamsList []string `mapstructure:"teams-list"`

	// OpsGenie Recipients.
	RecipientsList []string `mapstructure:"recipients-list"`

	// OpsGenie RecoveryAction
	RecoveryAction string `mapstructure:"recovery_action"`
}

type Service

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

func NewService

func NewService(c Config, d Diagnostic) *Service

func (*Service) Alert

func (s *Service) Alert(teams []string, recipients []string, recoveryAction string, level alert.Level, message, entityID string, t time.Time, eventDetails string, details models.Result) error

func (*Service) Close

func (s *Service) Close() error

func (*Service) Global

func (s *Service) Global() bool

func (*Service) Handler

func (s *Service) Handler(c HandlerConfig, ctx ...keyvalue.T) alert.Handler

func (*Service) Open

func (s *Service) Open() error

func (*Service) Test

func (s *Service) Test(options interface{}) error

func (*Service) TestOptions

func (s *Service) TestOptions() interface{}

func (*Service) Update

func (s *Service) Update(newConfig []interface{}) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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