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

e2ecortex

package
v1.13.1 Latest Latest
Warning

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

Go to latest
Published: Oct 4, 2022 License: Apache-2.0 Imports: 32 Imported by: 0

Documentation

Index

Constants

View Source
const (
	GossipPort = 9094
)

Variables

View Source
var ErrNotFound = errors.New("not found")

Functions

func FormatTime added in v1.4.0

func FormatTime(t time.Time) string

FormatTime converts a time to a string acceptable by the Prometheus API.

func GetDefaultImage

func GetDefaultImage() string

GetDefaultImage returns the Docker image to use to run Cortex.

Types

type AlertGroup added in v1.9.0

type AlertGroup struct {
	Labels model.LabelSet `json:"labels"`
	Alerts []model.Alert  `json:"alerts"`
}

type Client

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

Client is a client used to interact with Cortex in integration tests

func NewClient

func NewClient(
	distributorAddress string,
	querierAddress string,
	alertmanagerAddress string,
	rulerAddress string,
	orgID string,
) (*Client, error)

NewClient makes a new Cortex client

func (*Client) CreateSilence added in v1.9.0

func (c *Client) CreateSilence(ctx context.Context, silence types.Silence) (string, error)

CreateSilence creates a new silence and returns the unique identifier of the silence.

func (*Client) DeleteAlertmanagerConfig added in v1.3.0

func (c *Client) DeleteAlertmanagerConfig(ctx context.Context) error

DeleteAlertmanagerConfig gets the status of an alertmanager instance

func (*Client) DeleteRuleGroup added in v1.0.0

func (c *Client) DeleteRuleGroup(namespace string, groupName string) error

DeleteRuleGroup deletes a rule group.

func (*Client) DeleteRuleNamespace added in v1.4.0

func (c *Client) DeleteRuleNamespace(namespace string) error

DeleteRuleNamespace deletes all the rule groups (and the namespace itself).

func (*Client) DeleteSilence added in v1.9.0

func (c *Client) DeleteSilence(ctx context.Context, id string) error

func (*Client) GetAlertGroups added in v1.9.0

func (c *Client) GetAlertGroups(ctx context.Context) ([]AlertGroup, error)

func (*Client) GetAlertmanagerConfig

func (c *Client) GetAlertmanagerConfig(ctx context.Context) (*alertConfig.Config, error)

GetAlertmanagerConfig gets the status of an alertmanager instance

func (*Client) GetAlertmanagerStatusPage added in v1.10.0

func (c *Client) GetAlertmanagerStatusPage(ctx context.Context) ([]byte, error)

GetAlertmanagerStatusPage gets the status page of alertmanager.

func (*Client) GetAlertsV1 added in v1.10.0

func (c *Client) GetAlertsV1(ctx context.Context) ([]model.Alert, error)

func (*Client) GetAlertsV2 added in v1.10.0

func (c *Client) GetAlertsV2(ctx context.Context) ([]model.Alert, error)

func (*Client) GetPrometheusRules added in v1.9.0

func (c *Client) GetPrometheusRules() ([]*ruler.RuleGroup, error)

GetPrometheusRules fetches the rules from the Prometheus endpoint /api/v1/rules.

func (*Client) GetReceivers added in v1.9.0

func (c *Client) GetReceivers(ctx context.Context) ([]string, error)

func (*Client) GetRuleGroup added in v1.9.0

func (c *Client) GetRuleGroup(namespace string, groupName string) (*http.Response, error)

GetRuleGroup gets a rule group.

func (*Client) GetRuleGroups added in v1.0.0

func (c *Client) GetRuleGroups() (map[string][]rulefmt.RuleGroup, error)

GetRuleGroups gets the configured rule groups from the ruler.

func (*Client) GetSilenceV1 added in v1.10.0

func (c *Client) GetSilenceV1(ctx context.Context, id string) (types.Silence, error)

func (*Client) GetSilenceV2 added in v1.10.0

func (c *Client) GetSilenceV2(ctx context.Context, id string) (types.Silence, error)

func (*Client) GetSilencesV1 added in v1.10.0

func (c *Client) GetSilencesV1(ctx context.Context) ([]types.Silence, error)

func (*Client) GetSilencesV2 added in v1.10.0

func (c *Client) GetSilencesV2(ctx context.Context) ([]types.Silence, error)

func (*Client) LabelNames added in v1.1.0

func (c *Client) LabelNames(start, end time.Time) ([]string, error)

LabelNames gets label names

func (*Client) LabelValues added in v1.1.0

func (c *Client) LabelValues(label string, start, end time.Time, matches []string) (model.LabelValues, error)

LabelValues gets label values

func (*Client) PostRequest added in v1.4.0

func (c *Client) PostRequest(url string, body io.Reader) (*http.Response, error)

func (*Client) Push

func (c *Client) Push(timeseries []prompb.TimeSeries) (*http.Response, error)

Push the input timeseries to the remote endpoint

func (*Client) Query

func (c *Client) Query(query string, ts time.Time) (model.Value, error)

Query runs an instant query.

func (*Client) QueryRange added in v1.4.0

func (c *Client) QueryRange(query string, start, end time.Time, step time.Duration) (model.Value, error)

Query runs a query range.

func (*Client) QueryRangeRaw added in v1.4.0

func (c *Client) QueryRangeRaw(query string, start, end time.Time, step time.Duration) (*http.Response, []byte, error)

QueryRangeRaw runs a ranged query directly against the querier API.

func (*Client) QueryRaw added in v1.2.0

func (c *Client) QueryRaw(query string) (*http.Response, []byte, error)

QueryRaw runs a query directly against the querier API.

func (*Client) SendAlertToAlermanager added in v1.4.0

func (c *Client) SendAlertToAlermanager(ctx context.Context, alert *model.Alert) error

SendAlertToAlermanager sends alerts to the Alertmanager API

func (*Client) Series added in v1.3.0

func (c *Client) Series(matches []string, start, end time.Time) ([]model.LabelSet, error)

Series finds series by label matchers.

func (*Client) SetAlertmanagerConfig added in v1.3.0

func (c *Client) SetAlertmanagerConfig(ctx context.Context, amConfig string, templates map[string]string) error

SetAlertmanagerConfig gets the status of an alertmanager instance

func (*Client) SetRuleGroup added in v1.0.0

func (c *Client) SetRuleGroup(rulegroup rulefmt.RuleGroup, namespace string) error

SetRuleGroup configures the provided rulegroup to the ruler.

type CompositeCortexService added in v1.1.0

type CompositeCortexService struct {
	*e2e.CompositeHTTPService
}

CompositeCortexService abstract an higher-level service composed, under the hood, by 2+ CortexService.

func NewCompositeCortexService added in v1.1.0

func NewCompositeCortexService(services ...*CortexService) *CompositeCortexService

type CortexService

type CortexService struct {
	*e2e.HTTPService
	// contains filtered or unexported fields
}

CortexService represents a Cortex service with at least an HTTP and GRPC port exposed.

func NewAlertmanager

func NewAlertmanager(name string, flags map[string]string, image string) *CortexService

func NewAlertmanagerWithTLS added in v1.8.0

func NewAlertmanagerWithTLS(name string, flags map[string]string, image string) *CortexService

func NewCompactor added in v1.7.0

func NewCompactor(name string, consulAddress string, flags map[string]string, image string) *CortexService

func NewCompactorWithConfigFile added in v1.7.0

func NewCompactorWithConfigFile(name, consulAddress, configFile string, flags map[string]string, image string) *CortexService

func NewCortexService

func NewCortexService(
	name string,
	image string,
	command *e2e.Command,
	readiness e2e.ReadinessProbe,
	httpPort int,
	grpcPort int,
	otherPorts ...int,
) *CortexService

func NewDistributor

func NewDistributor(name string, store RingStore, address string, flags map[string]string, image string) *CortexService

func NewDistributorWithConfigFile

func NewDistributorWithConfigFile(name string, store RingStore, address, configFile string, flags map[string]string, image string) *CortexService

func NewIngester

func NewIngester(name string, store RingStore, address string, flags map[string]string, image string) *CortexService

func NewIngesterWithConfigFile

func NewIngesterWithConfigFile(name string, store RingStore, address, configFile string, flags map[string]string, image string) *CortexService

func NewPurger added in v1.4.0

func NewPurger(name string, flags map[string]string, image string) *CortexService

func NewPurgerWithConfigFile added in v1.4.0

func NewPurgerWithConfigFile(name, configFile string, flags map[string]string, image string) *CortexService

func NewQuerier

func NewQuerier(name string, store RingStore, address string, flags map[string]string, image string) *CortexService

func NewQuerierWithConfigFile

func NewQuerierWithConfigFile(name string, store RingStore, address, configFile string, flags map[string]string, image string) *CortexService

func NewQueryFrontend

func NewQueryFrontend(name string, flags map[string]string, image string) *CortexService

func NewQueryFrontendWithConfigFile

func NewQueryFrontendWithConfigFile(name, configFile string, flags map[string]string, image string) *CortexService

func NewQueryScheduler added in v1.6.0

func NewQueryScheduler(name string, flags map[string]string, image string) *CortexService

func NewQuerySchedulerWithConfigFile added in v1.6.0

func NewQuerySchedulerWithConfigFile(name, configFile string, flags map[string]string, image string) *CortexService

func NewRuler added in v1.0.0

func NewRuler(name string, consulAddress string, flags map[string]string, image string) *CortexService

func NewSingleBinary

func NewSingleBinary(name string, flags map[string]string, image string, otherPorts ...int) *CortexService

func NewSingleBinaryWithConfigFile added in v1.1.0

func NewSingleBinaryWithConfigFile(name string, configFile string, flags map[string]string, image string, httpPort, grpcPort int, otherPorts ...int) *CortexService

func NewStoreGateway added in v1.1.0

func NewStoreGateway(name string, store RingStore, address string, flags map[string]string, image string) *CortexService

func NewStoreGatewayWithConfigFile added in v1.1.0

func NewStoreGatewayWithConfigFile(name string, store RingStore, address string, configFile string, flags map[string]string, image string) *CortexService

func NewTableManager

func NewTableManager(name string, flags map[string]string, image string) *CortexService

func NewTableManagerWithConfigFile

func NewTableManagerWithConfigFile(name, configFile string, flags map[string]string, image string) *CortexService

func (*CortexService) GRPCEndpoint

func (s *CortexService) GRPCEndpoint() string

func (*CortexService) NetworkGRPCEndpoint

func (s *CortexService) NetworkGRPCEndpoint() string

type RingStore added in v1.13.0

type RingStore string
const (
	RingStoreConsul RingStore = "consul"
	RingStoreEtcd   RingStore = "etcd"
)

type S3Client

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

func NewS3Client

func NewS3Client(cfg s3.Config) (*S3Client, error)

func NewS3ClientForMinio

func NewS3ClientForMinio(minio *e2e.HTTPService, bucketName string) (*S3Client, error)

func (*S3Client) Delete

func (c *S3Client) Delete(prefix string) error

Delete recursively deletes every object within the input prefix.

func (*S3Client) DeleteBlock

func (c *S3Client) DeleteBlock(userID, blockID string) error

DeleteBlock deletes a single block.

func (*S3Client) DeleteBlocks

func (c *S3Client) DeleteBlocks(userID string) error

DeleteBlocks deletes all blocks for a tenant.

type ServerStatus

type ServerStatus struct {
	Data struct {
		ConfigYaml string `json:"configYAML"`
	} `json:"data"`
}

ServerStatus represents a Alertmanager status response TODO: Upgrade to Alertmanager v0.20.0+ and utilize vendored structs

Jump to

Keyboard shortcuts

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