Documentation ¶
Index ¶
- Constants
- type ChunkStore
- type Config
- type Ingester
- func (i *Ingester) AllUserStats(ctx old_ctx.Context, req *client.UserStatsRequest) (*client.UsersStatsResponse, error)
- func (i *Ingester) Check(ctx old_ctx.Context, req *grpc_health_v1.HealthCheckRequest) (*grpc_health_v1.HealthCheckResponse, error)
- func (i *Ingester) Collect(ch chan<- prometheus.Metric)
- func (i *Ingester) Describe(ch chan<- *prometheus.Desc)
- func (i *Ingester) Flush()
- func (i *Ingester) FlushHandler(w http.ResponseWriter, r *http.Request)
- func (i *Ingester) LabelValues(ctx old_ctx.Context, req *client.LabelValuesRequest) (*client.LabelValuesResponse, error)
- func (i *Ingester) MetricsForLabelMatchers(ctx old_ctx.Context, req *client.MetricsForLabelMatchersRequest) (*client.MetricsForLabelMatchersResponse, error)
- func (i *Ingester) Push(ctx old_ctx.Context, req *client.WriteRequest) (*client.WriteResponse, error)
- func (i *Ingester) Query(ctx old_ctx.Context, req *client.QueryRequest) (*client.QueryResponse, error)
- func (i *Ingester) ReadinessHandler(w http.ResponseWriter, r *http.Request)
- func (i *Ingester) Shutdown()
- func (i *Ingester) StopIncomingRequests()
- func (i *Ingester) TransferChunks(stream client.Ingester_TransferChunksServer) error
- func (i *Ingester) TransferOut(ctx context.Context) error
- func (i *Ingester) UserStats(ctx old_ctx.Context, req *client.UserStatsRequest) (*client.UserStatsResponse, error)
- type UserStatesConfig
Constants ¶
const ( // DefaultConcurrentFlush is the number of series to flush concurrently DefaultConcurrentFlush = 50 // DefaultMaxSeriesPerUser is the maximum number of series allowed per user. DefaultMaxSeriesPerUser = 5000000 // DefaultMaxSeriesPerMetric is the maximum number of series in one metric (of a single user). DefaultMaxSeriesPerMetric = 50000 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ChunkStore ¶
type ChunkStore interface {
Put(ctx context.Context, chunks []cortex_chunk.Chunk) error
}
ChunkStore is the interface we need to store chunks
type Config ¶
type Config struct { LifecyclerConfig ring.LifecyclerConfig // Config for transferring chunks. SearchPendingFor time.Duration // Config for chunk flushing. FlushCheckPeriod time.Duration MaxChunkIdle time.Duration FlushOpTimeout time.Duration MaxChunkAge time.Duration ConcurrentFlushes int ChunkEncoding string // contains filtered or unexported fields }
Config for an Ingester.
func (*Config) RegisterFlags ¶
RegisterFlags adds the flags required to config this to the given FlagSet
func (*Config) SetClientConfig ¶
SetClientConfig sets clientConfig in config
type Ingester ¶
type Ingester struct {
// contains filtered or unexported fields
}
Ingester deals with "in flight" chunks. Based on Prometheus 1.x MemorySeriesStorage.
func New ¶
func New(cfg Config, chunkStore ChunkStore) (*Ingester, error)
New constructs a new Ingester.
func (*Ingester) AllUserStats ¶
func (i *Ingester) AllUserStats(ctx old_ctx.Context, req *client.UserStatsRequest) (*client.UsersStatsResponse, error)
AllUserStats returns ingestion statistics for all users known to this ingester.
func (*Ingester) Check ¶
func (i *Ingester) Check(ctx old_ctx.Context, req *grpc_health_v1.HealthCheckRequest) (*grpc_health_v1.HealthCheckResponse, error)
Check implements the grpc healthcheck
func (*Ingester) Collect ¶
func (i *Ingester) Collect(ch chan<- prometheus.Metric)
Collect implements prometheus.Collector.
func (*Ingester) Describe ¶
func (i *Ingester) Describe(ch chan<- *prometheus.Desc)
Describe implements prometheus.Collector.
func (*Ingester) Flush ¶
func (i *Ingester) Flush()
Flush triggers a flush of all the chunks and closes the flush queues. Called from the Lifecycler as part of the ingester shutdown.
func (*Ingester) FlushHandler ¶
func (i *Ingester) FlushHandler(w http.ResponseWriter, r *http.Request)
FlushHandler triggers a flush of all in memory chunks. Mainly used for local testing.
func (*Ingester) LabelValues ¶
func (i *Ingester) LabelValues(ctx old_ctx.Context, req *client.LabelValuesRequest) (*client.LabelValuesResponse, error)
LabelValues returns all label values that are associated with a given label name.
func (*Ingester) MetricsForLabelMatchers ¶
func (i *Ingester) MetricsForLabelMatchers(ctx old_ctx.Context, req *client.MetricsForLabelMatchersRequest) (*client.MetricsForLabelMatchersResponse, error)
MetricsForLabelMatchers returns all the metrics which match a set of matchers.
func (*Ingester) Push ¶
func (i *Ingester) Push(ctx old_ctx.Context, req *client.WriteRequest) (*client.WriteResponse, error)
Push implements client.IngesterServer
func (*Ingester) Query ¶
func (i *Ingester) Query(ctx old_ctx.Context, req *client.QueryRequest) (*client.QueryResponse, error)
Query implements service.IngesterServer
func (*Ingester) ReadinessHandler ¶
func (i *Ingester) ReadinessHandler(w http.ResponseWriter, r *http.Request)
ReadinessHandler is used to indicate to k8s when the ingesters are ready for the addition removal of another ingester. Returns 204 when the ingester is ready, 500 otherwise.
func (*Ingester) Shutdown ¶
func (i *Ingester) Shutdown()
Shutdown beings the process to stop this ingester.
func (*Ingester) StopIncomingRequests ¶
func (i *Ingester) StopIncomingRequests()
StopIncomingRequests is called during the shutdown process.
func (*Ingester) TransferChunks ¶
func (i *Ingester) TransferChunks(stream client.Ingester_TransferChunksServer) error
TransferChunks receives all the chunks from another ingester.
func (*Ingester) TransferOut ¶
TransferOut finds an ingester in PENDING state and transfers our chunks to it. Called as part of the ingester shutdown process.
func (*Ingester) UserStats ¶
func (i *Ingester) UserStats(ctx old_ctx.Context, req *client.UserStatsRequest) (*client.UserStatsResponse, error)
UserStats returns ingestion statistics for the current user.
type UserStatesConfig ¶
type UserStatesConfig struct { RateUpdatePeriod time.Duration MaxSeriesPerUser int MaxSeriesPerMetric int }
UserStatesConfig configures userStates properties.
func (*UserStatesConfig) RegisterFlags ¶
func (cfg *UserStatesConfig) RegisterFlags(f *flag.FlagSet)
RegisterFlags adds the flags required to config this to the given FlagSet