Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewTableClient ¶
func NewTableClient(ctx context.Context, cfg Config, registerer prometheus.Registerer) (chunk.TableClient, error)
NewTableClient returns a new TableClient.
Types ¶
type Config ¶
type Config struct {
Addresses string `yaml:"addresses"`
Port int `yaml:"port"`
Keyspace string `yaml:"keyspace"`
Consistency string `yaml:"consistency"`
ReplicationFactor int `yaml:"replication_factor"`
DisableInitialHostLookup bool `yaml:"disable_initial_host_lookup"`
SSL bool `yaml:"SSL"`
HostVerification bool `yaml:"host_verification"`
CAPath string `yaml:"CA_path"`
Auth bool `yaml:"auth"`
Username string `yaml:"username"`
Password flagext.Secret `yaml:"password"`
PasswordFile string `yaml:"password_file"`
CustomAuthenticators flagext.StringSlice `yaml:"custom_authenticators"`
Timeout time.Duration `yaml:"timeout"`
ConnectTimeout time.Duration `yaml:"connect_timeout"`
ReconnectInterval time.Duration `yaml:"reconnect_interval"`
Retries int `yaml:"max_retries"`
MaxBackoff time.Duration `yaml:"retry_max_backoff"`
MinBackoff time.Duration `yaml:"retry_min_backoff"`
QueryConcurrency int `yaml:"query_concurrency"`
NumConnections int `yaml:"num_connections"`
ConvictHosts bool `yaml:"convict_hosts_on_failure"`
TableOptions string `yaml:"table_options"`
}
Config for a StorageClient
func (*Config) RegisterFlags ¶
RegisterFlags adds the flags required to config this to the given FlagSet
type CustomPasswordAuthenticator ¶ added in v0.7.0
type CustomPasswordAuthenticator struct {
ApprovedAuthenticators []string
Username string
Password string
}
CustomPasswordAuthenticator provides the default behaviour for Username/Password authentication with Cassandra while allowing users to specify a non-default Authenticator to accept.
func (CustomPasswordAuthenticator) Challenge ¶ added in v0.7.0
func (p CustomPasswordAuthenticator) Challenge(req []byte) ([]byte, gocql.Authenticator, error)
Challenge verifies the name of the authenticator and formats the provided username and password into a response
func (CustomPasswordAuthenticator) Success ¶ added in v0.7.0
func (p CustomPasswordAuthenticator) Success(data []byte) error
Success returns nil by default, identical to the default PasswordAuthenticator
type ObjectClient ¶ added in v1.2.0
type ObjectClient struct {
// contains filtered or unexported fields
}
ObjectClient implements chunk.ObjectClient for Cassandra.
func NewObjectClient ¶ added in v1.2.0
func NewObjectClient(cfg Config, schemaCfg chunk.SchemaConfig, registerer prometheus.Registerer) (*ObjectClient, error)
NewObjectClient returns a new ObjectClient.
func (*ObjectClient) DeleteChunk ¶ added in v1.2.0
func (s *ObjectClient) DeleteChunk(ctx context.Context, userID, chunkID string) error
func (*ObjectClient) Stop ¶ added in v1.2.0
func (s *ObjectClient) Stop()
Stop implement chunk.ObjectClient.
type StorageClient ¶
type StorageClient struct {
// contains filtered or unexported fields
}
StorageClient implements chunk.IndexClient and chunk.ObjectClient for Cassandra.
func NewStorageClient ¶
func NewStorageClient(cfg Config, schemaCfg chunk.SchemaConfig, registerer prometheus.Registerer) (*StorageClient, error)
NewStorageClient returns a new StorageClient.
func (*StorageClient) BatchWrite ¶
func (s *StorageClient) BatchWrite(ctx context.Context, batch chunk.WriteBatch) error
BatchWrite implement chunk.IndexClient.
func (*StorageClient) NewWriteBatch ¶
func (s *StorageClient) NewWriteBatch() chunk.WriteBatch
NewWriteBatch implement chunk.IndexClient.
func (*StorageClient) QueryPages ¶
func (s *StorageClient) QueryPages(ctx context.Context, queries []chunk.IndexQuery, callback func(chunk.IndexQuery, chunk.ReadBatch) bool) error
QueryPages implement chunk.IndexClient.