Documentation ¶
Index ¶
- type Compactor
- func (c *Compactor) BlockRetentionForTenant(tenantID string) time.Duration
- func (c *Compactor) Combine(dataEncoding string, tenantID string, objs ...[]byte) ([]byte, bool, error)
- func (c *Compactor) MaxBytesPerTraceForTenant(tenantID string) int
- func (c *Compactor) OnRingInstanceHeartbeat(lifecycler *ring.BasicLifecycler, ringDesc *ring.Desc, ...)
- func (c *Compactor) OnRingInstanceRegister(lifecycler *ring.BasicLifecycler, ringDesc ring.Desc, instanceExists bool, ...) (ring.InstanceState, ring.Tokens)
- func (c *Compactor) OnRingInstanceStopping(lifecycler *ring.BasicLifecycler)
- func (c *Compactor) OnRingInstanceTokens(lifecycler *ring.BasicLifecycler, tokens ring.Tokens)
- func (c *Compactor) Owns(hash string) bool
- func (c *Compactor) RecordDiscardedSpans(count int, tenantID string)
- type Config
- type RingConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Compactor ¶
type Compactor struct { services.Service Ring *ring.Ring // contains filtered or unexported fields }
func New ¶
func New(cfg Config, store storage.Store, overrides *overrides.Overrides, reg prometheus.Registerer) (*Compactor, error)
New makes a new Compactor.
func (*Compactor) BlockRetentionForTenant ¶ added in v0.6.0
BlockRetentionForTenant implements CompactorOverrides
func (*Compactor) Combine ¶
func (c *Compactor) Combine(dataEncoding string, tenantID string, objs ...[]byte) ([]byte, bool, error)
Combine implements tempodb.CompactorSharder
func (*Compactor) MaxBytesPerTraceForTenant ¶ added in v1.5.0
func (*Compactor) OnRingInstanceHeartbeat ¶ added in v1.3.0
func (c *Compactor) OnRingInstanceHeartbeat(lifecycler *ring.BasicLifecycler, ringDesc *ring.Desc, instanceDesc *ring.InstanceDesc)
OnRingInstanceHeartbeat is called while the instance is updating its heartbeat in the ring.
func (*Compactor) OnRingInstanceRegister ¶ added in v1.3.0
func (c *Compactor) OnRingInstanceRegister(lifecycler *ring.BasicLifecycler, ringDesc ring.Desc, instanceExists bool, instanceID string, instanceDesc ring.InstanceDesc) (ring.InstanceState, ring.Tokens)
OnRingInstanceRegister is called while the lifecycler is registering the instance within the ring and should return the state and set of tokens to use for the instance itself.
func (*Compactor) OnRingInstanceStopping ¶ added in v1.3.0
func (c *Compactor) OnRingInstanceStopping(lifecycler *ring.BasicLifecycler)
OnRingInstanceStopping is called while the lifecycler is stopping. The lifecycler will continue to hearbeat the ring the this function is executing and will proceed to unregister the instance from the ring only after this function has returned.
func (*Compactor) OnRingInstanceTokens ¶ added in v1.3.0
func (c *Compactor) OnRingInstanceTokens(lifecycler *ring.BasicLifecycler, tokens ring.Tokens)
OnRingInstanceTokens is called once the instance tokens are set and are stable within the ring (honoring the observe period, if set).
func (*Compactor) RecordDiscardedSpans ¶ added in v1.5.0
type Config ¶
type Config struct { ShardingRing RingConfig `yaml:"ring,omitempty"` Compactor tempodb.CompactorConfig `yaml:"compaction"` OverrideRingKey string `yaml:"override_ring_key"` }
type RingConfig ¶ added in v1.4.0
type RingConfig struct { KVStore kv.Config `yaml:"kvstore"` HeartbeatPeriod time.Duration `yaml:"heartbeat_period"` HeartbeatTimeout time.Duration `yaml:"heartbeat_timeout"` // Wait ring stability. WaitStabilityMinDuration time.Duration `yaml:"wait_stability_min_duration"` WaitStabilityMaxDuration time.Duration `yaml:"wait_stability_max_duration"` // Instance details InstanceID string `yaml:"instance_id" doc:"hidden"` InstanceInterfaceNames []string `yaml:"instance_interface_names"` InstancePort int `yaml:"instance_port" doc:"hidden"` InstanceAddr string `yaml:"instance_addr" doc:"hidden"` // Injected internally ListenPort int `yaml:"-"` WaitActiveInstanceTimeout time.Duration `yaml:"wait_active_instance_timeout"` ObservePeriod time.Duration `yaml:"-"` }
RingConfig masks the ring lifecycler config which contains many options not really required by the compactors ring. This config is used to strip down the config to the minimum, and avoid confusion to the user.
func (*RingConfig) RegisterFlags ¶ added in v1.4.0
func (cfg *RingConfig) RegisterFlags(f *flag.FlagSet)
RegisterFlags adds the flags required to config this to the given FlagSet
func (*RingConfig) ToLifecyclerConfig ¶ added in v1.4.0
func (cfg *RingConfig) ToLifecyclerConfig() ring.LifecyclerConfig
ToLifecyclerConfig returns a LifecyclerConfig based on the compactor ring config.