shipper

package
v2.4.3 Latest Latest
Warning

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

Go to latest
Published: Mar 21, 2022 License: AGPL-3.0 Imports: 29 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// ModeReadWrite is to allow both read and write
	ModeReadWrite = iota
	// ModeReadOnly is to allow only read operations
	ModeReadOnly
	// ModeWriteOnly is to allow only write operations
	ModeWriteOnly

	// BoltDBShipperType holds the index type for using boltdb with shipper which keeps flushing them to a shared storage
	BoltDBShipperType = "boltdb-shipper"

	// FilesystemObjectStoreType holds the periodic config type for the filesystem store
	FilesystemObjectStoreType = "filesystem"

	// UploadInterval defines interval for when we check if there are new index files to upload.
	// It's also used to snapshot the currently written index tables so the snapshots can be used for reads.
	UploadInterval = 1 * time.Minute
)

Variables

This section is empty.

Functions

func NewBoltDBShipperTableClient

func NewBoltDBShipperTableClient(objectClient chunk.ObjectClient, storageKeyPrefix string) chunk.TableClient

func NewShipper

func NewShipper(cfg Config, storageClient chunk.ObjectClient, limits downloads.Limits, registerer prometheus.Registerer) (chunk.IndexClient, error)

NewShipper creates a shipper for syncing local objects with a store

Types

type Config

type Config struct {
	ActiveIndexDirectory     string                   `yaml:"active_index_directory"`
	SharedStoreType          string                   `yaml:"shared_store"`
	SharedStoreKeyPrefix     string                   `yaml:"shared_store_key_prefix"`
	CacheLocation            string                   `yaml:"cache_location"`
	CacheTTL                 time.Duration            `yaml:"cache_ttl"`
	ResyncInterval           time.Duration            `yaml:"resync_interval"`
	QueryReadyNumDays        int                      `yaml:"query_ready_num_days"`
	IndexGatewayClientConfig IndexGatewayClientConfig `yaml:"index_gateway_client"`
	BuildPerTenantIndex      bool                     `yaml:"build_per_tenant_index"`
	IngesterName             string                   `yaml:"-"`
	Mode                     int                      `yaml:"-"`
	IngesterDBRetainPeriod   time.Duration            `yaml:"-"`
}

func (*Config) RegisterFlags

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

RegisterFlags registers flags.

func (*Config) Validate

func (cfg *Config) Validate() error

type GatewayClient

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

func (*GatewayClient) BatchWrite

func (s *GatewayClient) BatchWrite(ctx context.Context, batch chunk.WriteBatch) error

func (*GatewayClient) NewWriteBatch

func (s *GatewayClient) NewWriteBatch() chunk.WriteBatch

func (*GatewayClient) QueryPages

func (s *GatewayClient) QueryPages(ctx context.Context, queries []chunk.IndexQuery, callback chunk.QueryPagesCallback) error

func (*GatewayClient) Stop

func (s *GatewayClient) Stop()

type IndexGatewayClientConfig

type IndexGatewayClientConfig struct {
	Address          string            `yaml:"server_address,omitempty"`
	GRPCClientConfig grpcclient.Config `yaml:"grpc_client_config"`
}

func (*IndexGatewayClientConfig) RegisterFlags

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

RegisterFlags registers flags.

func (*IndexGatewayClientConfig) RegisterFlagsWithPrefix

func (cfg *IndexGatewayClientConfig) RegisterFlagsWithPrefix(prefix string, f *flag.FlagSet)

RegisterFlagsWithPrefix registers flags with prefix.

type Shipper

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

func (*Shipper) BatchWrite

func (s *Shipper) BatchWrite(ctx context.Context, batch chunk.WriteBatch) error

func (*Shipper) NewWriteBatch

func (s *Shipper) NewWriteBatch() chunk.WriteBatch

func (*Shipper) QueryPages

func (s *Shipper) QueryPages(ctx context.Context, queries []chunk.IndexQuery, callback chunk.QueryPagesCallback) error

func (*Shipper) Stop

func (s *Shipper) Stop()

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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