Help us shape the future of Go! Take the 2026 Go Developer Survey

alertstore

package
v1.21.1 Latest Latest
Warning

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

Go to latest
Published: Jun 5, 2026 License: Apache-2.0 Imports: 15 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AlertStore

type AlertStore interface {
	// ListAllUsers returns all users with alertmanager configuration.
	ListAllUsers(ctx context.Context) ([]string, error)

	// GetAlertConfigs loads and returns the alertmanager configuration for given users.
	// If any of the provided users has no configuration, then this function does not return an
	// error but the returned configs will not include the missing users.
	GetAlertConfigs(ctx context.Context, userIDs []string) (map[string]alertspb.AlertConfigDesc, error)

	// GetAlertConfig loads and returns the alertmanager configuration for the given user.
	GetAlertConfig(ctx context.Context, user string) (alertspb.AlertConfigDesc, error)

	// SetAlertConfig stores the alertmanager configuration for an user.
	SetAlertConfig(ctx context.Context, cfg alertspb.AlertConfigDesc) error

	// DeleteAlertConfig deletes the alertmanager configuration for an user.
	// If configuration for the user doesn't exist, no error is reported.
	DeleteAlertConfig(ctx context.Context, user string) error

	// ListUsersWithFullState returns the list of users which have had state written.
	ListUsersWithFullState(ctx context.Context) ([]string, error)

	// GetFullState loads and returns the alertmanager state for the given user.
	GetFullState(ctx context.Context, user string) (alertspb.FullStateDesc, error)

	// SetFullState stores the alertmanager state for the given user.
	SetFullState(ctx context.Context, user string, fs alertspb.FullStateDesc) error

	// DeleteFullState deletes the alertmanager state for an user.
	// If state for the user doesn't exist, no error is reported.
	DeleteFullState(ctx context.Context, user string) error

	// GetUserIndexUpdater is getter for UserIndexUpdater
	GetUserIndexUpdater() *users.UserIndexUpdater
}

AlertStore stores and configures users rule configs

func NewAlertStore

func NewAlertStore(ctx context.Context, cfg Config, cfgProvider bucket.TenantConfigProvider, logger log.Logger, reg prometheus.Registerer) (AlertStore, error)

NewAlertStore returns a alertmanager store backend client based on the provided cfg.

type Config

type Config struct {
	bucket.Config `yaml:",inline"`
	ConfigDB      client.Config            `yaml:"configdb"`
	Local         local.StoreConfig        `yaml:"local"`
	UsersScanner  users.UsersScannerConfig `yaml:"users_scanner"`
}

Config configures the alertmanager storage backend.

func (*Config) IsFullStateSupported added in v1.10.0

func (cfg *Config) IsFullStateSupported() bool

IsFullStateSupported returns if the given configuration supports access to FullState objects.

func (*Config) RegisterFlags

func (cfg *Config) RegisterFlags(f *flag.FlagSet)

RegisterFlags registers the backend storage config.

type MockBucket added in v1.21.0

type MockBucket struct {
	objstore.Bucket
	// contains filtered or unexported fields
}

func (*MockBucket) Get added in v1.21.0

func (m *MockBucket) Get(ctx context.Context, name string) (io.ReadCloser, error)

func (*MockBucket) IsAccessDeniedErr added in v1.21.0

func (m *MockBucket) IsAccessDeniedErr(err error) bool

func (*MockBucket) ReaderWithExpectedErrs added in v1.21.0

func (m *MockBucket) ReaderWithExpectedErrs(expectedFunc objstore.IsOpFailureExpectedFunc) objstore.BucketReader

func (*MockBucket) WithExpectedErrs added in v1.21.0

func (m *MockBucket) WithExpectedErrs(expectedFunc objstore.IsOpFailureExpectedFunc) objstore.Bucket

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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