Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewPool ¶
func NewPool(name string, cfg PoolConfig, ring ring.ReadRing, factory ring_client.PoolFactory, logger log.Logger, metricsNamespace string) *ring_client.Pool
Types ¶
type ClosableHealthAndIngesterClient ¶
type ClosableHealthAndIngesterClient struct {
logproto.PatternClient
grpc_health_v1.HealthClient
io.Closer
}
type Config ¶
type Config struct {
PoolConfig PoolConfig `yaml:"pool_config,omitempty" doc:"description=Configures how connections are pooled."`
RemoteTimeout time.Duration `yaml:"remote_timeout,omitempty"`
GRPCClientConfig grpcclient.Config `yaml:"grpc_client_config" doc:"description=Configures how the gRPC connection to ingesters work as a client."`
GRPCUnaryClientInterceptors []grpc.UnaryClientInterceptor `yaml:"-"`
GRCPStreamClientInterceptors []grpc.StreamClientInterceptor `yaml:"-"`
// Internal is used to indicate that this client communicates on behalf of
// a machine and not a user. When Internal = true, the client won't attempt
// to inject an userid into the context.
Internal bool `yaml:"-"`
}
Config for an ingester client.
func (*Config) RegisterFlags ¶
RegisterFlags registers flags.
type HealthAndIngesterClient ¶
type HealthAndIngesterClient interface {
grpc_health_v1.HealthClient
Close() error
}
type PoolConfig ¶
type PoolConfig struct {
ClientCleanupPeriod time.Duration `yaml:"client_cleanup_period"`
HealthCheckIngesters bool `yaml:"health_check_ingesters"`
RemoteTimeout time.Duration `yaml:"remote_timeout"`
}
PoolConfig is config for creating a Pool.
func (*PoolConfig) RegisterFlagsWithPrefix ¶
func (cfg *PoolConfig) RegisterFlagsWithPrefix(prefix string, f *flag.FlagSet)
RegisterFlags adds the flags required to config this to the given FlagSet.
Click to show internal directories.
Click to hide internal directories.