e2ethanos

package
v0.26.0 Latest Latest
Warning

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

Go to latest
Published: Apr 9, 2022 License: Apache-2.0 Imports: 36 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ContainerSharedDir = "/shared"
)
View Source
const (
	FeatureExemplarStorage = "exemplar-storage"
)
View Source
const LocalPrometheusTarget = "localhost:9090"

LocalPrometheusTarget is a constant to be used in the Prometheus config if you wish to enable Prometheus to scrape itself in a test.

Variables

View Source
var QueryUpWithoutInstance = func() string { return "sum(up) without (instance)" }

NOTE: by using aggregation all results are now unsorted.

Functions

func CleanScenario

func CleanScenario(t testing.TB, e *e2e.DockerEnvironment) func()

func DefaultAlertmanagerImage

func DefaultAlertmanagerImage() string

func DefaultImage

func DefaultImage() string

DefaultImage returns the local docker image to use to run Thanos.

func DefaultPromConfig

func DefaultPromConfig(name string, replica int, remoteWriteEndpoint, ruleFile string, scrapeTargets ...string) string

DefaultPromConfig returns Prometheus config that sets Prometheus to: * expose 2 external labels, source and replica. * optionallly scrape self. This will produce up == 0 metric which we can assert on. * optionally remote write endpoint to write into.

func DefaultPrometheusImage

func DefaultPrometheusImage() string

TODO(bwplotka): Run against multiple?

func NewAlertmanager

func NewAlertmanager(e e2e.Environment, name string) (e2e.InstrumentedRunnable, error)

func NewCompactor

func NewCompactor(e e2e.Environment, name string, bucketConfig client.BucketConfig, relabelConfig []relabel.Config, extArgs ...string) (e2e.InstrumentedRunnable, error)

func NewIngestingReceiver

func NewIngestingReceiver(e e2e.Environment, name string) (e2e.InstrumentedRunnable, error)

NewIngestingReceiver creates a Thanos Receive instance that is only configured to ingest, not route to other receivers.

func NewMemcached

func NewMemcached(e e2e.Environment, name string) e2e.InstrumentedRunnable

func NewMinio

func NewMinio(env e2e.Environment, name, bktName string) (e2e.InstrumentedRunnable, error)

NewMinio returns minio server, used as a local replacement for S3. TODO(@matej-g): This is a temporary workaround for https://github.com/efficientgo/e2e/issues/11; after this is addresses fixed all calls should be replaced with e2edb.NewMinio.

func NewPrometheus

func NewPrometheus(e e2e.Environment, name, promConfig, webConfig, promImage string, enableFeatures ...string) (e2e.InstrumentedRunnable, string, error)

func NewPrometheusWithSidecar

func NewPrometheusWithSidecar(e e2e.Environment, name, promConfig, webConfig, promImage, minTime string, enableFeatures ...string) (e2e.InstrumentedRunnable, e2e.InstrumentedRunnable, error)

func NewPrometheusWithSidecarCustomImage

func NewPrometheusWithSidecarCustomImage(e e2e.Environment, name, promConfig, webConfig, promImage, minTime string, sidecarImage string, enableFeatures ...string) (e2e.InstrumentedRunnable, e2e.InstrumentedRunnable, error)

func NewQueryFrontend

func NewQueryFrontend(e e2e.Environment, name, downstreamURL string, cacheConfig queryfrontend.CacheProviderConfig) (e2e.InstrumentedRunnable, error)

func NewReverseProxy

func NewReverseProxy(e e2e.Environment, name, tenantID, target string) (e2e.InstrumentedRunnable, error)

func NewRoutingAndIngestingReceiverFromService

func NewRoutingAndIngestingReceiverFromService(service e2e.InstrumentedRunnableBuilder, sharedDir string, replicationFactor int, hashring ...receive.HashringConfig) (e2e.InstrumentedRunnable, error)

NewRoutingAndIngestingReceiverFromService creates a Thanos Receive instances from an unitiated service. It is configured both for ingesting samples and routing samples to other receivers.

func NewRoutingAndIngestingReceiverWithConfigWatcher

func NewRoutingAndIngestingReceiverWithConfigWatcher(service e2e.InstrumentedRunnableBuilder, sharedDir string, replicationFactor int, hashring ...receive.HashringConfig) (e2e.InstrumentedRunnable, error)

func NewRoutingReceiver

func NewRoutingReceiver(e e2e.Environment, name string, replicationFactor int, hashring ...receive.HashringConfig) (e2e.InstrumentedRunnable, error)

NewRoutingReceiver creates a Thanos Receive instance that is only configured to route to other receive instances. It has no local storage.

func NewS3Config

func NewS3Config(bucket, endpoint, basePath string) s3.Config

func NewService

func NewService(
	e e2e.Environment,
	name string,
	image string,
	command e2e.Command,
	readiness *e2e.HTTPReadinessProbe,
	http, grpc int,
	otherPorts ...Port,
) e2e.InstrumentedRunnable

func NewSingleHostReverseProxy

func NewSingleHostReverseProxy(target *url.URL, externalPrefix string) *httputil.ReverseProxy

NewSingleHostReverseProxy is almost same as httputil.NewSingleHostReverseProxy but it performs a url path rewrite.

func NewStatelessRuler

func NewStatelessRuler(e e2e.Environment, name, ruleSubDir string, amCfg []alert.AlertmanagerConfig, queryCfg []httpconfig.Config, remoteWriteCfg []*config.RemoteWriteConfig) (e2e.InstrumentedRunnable, error)

func NewStoreGW

func NewStoreGW(e e2e.Environment, name string, bucketConfig client.BucketConfig, cacheConfig string, extArgs []string, relabelConfig ...relabel.Config) (e2e.InstrumentedRunnable, error)

func NewTSDBRuler

func NewTSDBRuler(e e2e.Environment, name, ruleSubDir string, amCfg []alert.AlertmanagerConfig, queryCfg []httpconfig.Config) (e2e.InstrumentedRunnable, error)

func NewToolsBucketWeb

func NewToolsBucketWeb(
	e e2e.Environment,
	name string,
	bucketConfig client.BucketConfig,
	routePrefix,
	externalPrefix string,
	minTime string,
	maxTime string,
	relabelConfig string,
) (e2e.InstrumentedRunnable, error)

func NewUninitiatedReceiver

func NewUninitiatedReceiver(e e2e.Environment, name string) e2e.InstrumentedRunnableBuilder

NewUninitiatedReceiver returns a future receiver that can be initiated. It is useful for obtaining a receiver address for hashring before the receiver is started.

func RemoteWriteEndpoint

func RemoteWriteEndpoint(addr string) string

Types

type Port

type Port struct {
	Name      string
	PortNum   int
	IsMetrics bool
}

type QuerierBuilder

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

func NewQuerierBuilder

func NewQuerierBuilder(e e2e.Environment, name string, storeAddresses ...string) *QuerierBuilder

func (*QuerierBuilder) Build

func (*QuerierBuilder) BuildUninitiated

func (q *QuerierBuilder) BuildUninitiated() e2e.InstrumentedRunnableBuilder

func (*QuerierBuilder) Initiate

func (q *QuerierBuilder) Initiate(service e2e.InstrumentedRunnableBuilder, storeAddresses ...string) (e2e.InstrumentedRunnable, error)

func (*QuerierBuilder) WithEnabledFeatures

func (q *QuerierBuilder) WithEnabledFeatures(enableFeatures []string) *QuerierBuilder

func (*QuerierBuilder) WithEndpoints

func (q *QuerierBuilder) WithEndpoints(endpoints ...string) *QuerierBuilder

func (*QuerierBuilder) WithExemplarAddresses

func (q *QuerierBuilder) WithExemplarAddresses(exemplarAddresses ...string) *QuerierBuilder

func (*QuerierBuilder) WithExternalPrefix

func (q *QuerierBuilder) WithExternalPrefix(externalPrefix string) *QuerierBuilder

func (*QuerierBuilder) WithFileSDStoreAddresses

func (q *QuerierBuilder) WithFileSDStoreAddresses(fileSDStoreAddresses ...string) *QuerierBuilder

func (*QuerierBuilder) WithImage

func (q *QuerierBuilder) WithImage(image string) *QuerierBuilder

func (*QuerierBuilder) WithMetadataAddresses

func (q *QuerierBuilder) WithMetadataAddresses(metadataAddresses ...string) *QuerierBuilder

func (*QuerierBuilder) WithRoutePrefix

func (q *QuerierBuilder) WithRoutePrefix(routePrefix string) *QuerierBuilder

func (*QuerierBuilder) WithRuleAddresses

func (q *QuerierBuilder) WithRuleAddresses(ruleAddresses ...string) *QuerierBuilder

func (*QuerierBuilder) WithTargetAddresses

func (q *QuerierBuilder) WithTargetAddresses(targetAddresses ...string) *QuerierBuilder

func (*QuerierBuilder) WithTracingConfig

func (q *QuerierBuilder) WithTracingConfig(tracingConfig string) *QuerierBuilder

Jump to

Keyboard shortcuts

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