Documentation
¶
Index ¶
Constants ¶
View Source
const ( RingName = "segment-writer" RingKey = "segment-writer-ring" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
GRPCClientConfig grpcclient.Config `yaml:"grpc_client_config" doc:"description=Configures the gRPC client used to communicate with the segment writer."`
LifecyclerConfig ring.LifecyclerConfig `yaml:"lifecycler,omitempty"`
SegmentDuration time.Duration `yaml:"segment_duration,omitempty" category:"advanced"`
FlushConcurrency uint `yaml:"flush_concurrency,omitempty" category:"advanced"`
UploadTimeout time.Duration `yaml:"upload-timeout,omitempty" category:"advanced"`
UploadMaxRetries int `yaml:"upload-retry_max_retries,omitempty" category:"advanced"`
UploadMinBackoff time.Duration `yaml:"upload-retry_min_period,omitempty" category:"advanced"`
UploadMaxBackoff time.Duration `yaml:"upload-retry_max_period,omitempty" category:"advanced"`
UploadHedgeAfter time.Duration `yaml:"upload-hedge_upload_after,omitempty" category:"advanced"`
UploadHedgeRateMax float64 `yaml:"upload-hedge_rate_max,omitempty" category:"advanced"`
UploadHedgeRateBurst uint `yaml:"upload-hedge_rate_burst,omitempty" category:"advanced"`
MetadataDLQEnabled bool `yaml:"metadata_dlq_enabled,omitempty" category:"advanced"`
MetadataUpdateTimeout time.Duration `yaml:"metadata_update_timeout,omitempty" category:"advanced"`
}
func (*Config) RegisterFlags ¶
type Limits ¶
type Limits interface {
IngestionRelabelingRules(tenantID string) []*relabel.Config
DistributorUsageGroups(tenantID string) *validation.UsageGroupConfig
}
type SegmentWriterService ¶
type SegmentWriterService struct {
services.Service
segmentwriterv1.UnimplementedSegmentWriterServiceServer
// contains filtered or unexported fields
}
func New ¶
func New( reg prometheus.Registerer, logger log.Logger, config Config, limits Limits, health health.Service, storageBucket phlareobj.Bucket, metastoreClient *metastoreclient.Client, ) (*SegmentWriterService, error)
func (*SegmentWriterService) CheckReady ¶
func (i *SegmentWriterService) CheckReady(ctx context.Context) error
CheckReady is used to indicate when the ingesters are ready for the addition removal of another ingester. Returns 204 when the ingester is ready, 500 otherwise.
func (*SegmentWriterService) Push ¶
func (i *SegmentWriterService) Push(ctx context.Context, req *segmentwriterv1.PushRequest) (*segmentwriterv1.PushResponse, error)
Click to show internal directories.
Click to hide internal directories.