Documentation ¶
Index ¶
- Variables
- type ChunkWriter
- type CompositeStore
- func (c *CompositeStore) AddStore(start model.Time, fetcher *fetcher.Fetcher, index index.Reader, ...)
- func (c CompositeStore) GetChunkFetcher(tm model.Time) *fetcher.Fetcher
- func (c CompositeStore) GetChunkRefs(ctx context.Context, userID string, from, through model.Time, ...) ([][]chunk.Chunk, []*fetcher.Fetcher, error)
- func (c CompositeStore) GetSeries(ctx context.Context, userID string, from, through model.Time, ...) ([]labels.Labels, error)
- func (c CompositeStore) LabelNamesForMetricName(ctx context.Context, userID string, from, through model.Time, ...) ([]string, error)
- func (c CompositeStore) LabelValuesForMetricName(ctx context.Context, userID string, from, through model.Time, ...) ([]string, error)
- func (c CompositeStore) Put(ctx context.Context, chunks []chunk.Chunk) error
- func (c CompositeStore) PutOne(ctx context.Context, from, through model.Time, chunk chunk.Chunk) error
- func (c CompositeStore) SetChunkFilterer(chunkFilter chunk.RequestChunkFilterer)
- func (c CompositeStore) Stats(ctx context.Context, userID string, from, through model.Time, ...) (*stats.Stats, error)
- func (c CompositeStore) Stop()
- func (c *CompositeStore) Stores() []Store
- type Store
- type StoreLimits
- type Writer
Constants ¶
This section is empty.
Variables ¶
View Source
var ( DedupedChunksTotal = promauto.NewCounter(prometheus.CounterOpts{ Namespace: "loki", Name: "chunk_store_deduped_chunks_total", Help: "Count of chunks which were not stored because they have already been stored by another replica.", }) IndexEntriesPerChunk = promauto.NewHistogram(prometheus.HistogramOpts{ Namespace: "loki", Name: "chunk_store_index_entries_per_chunk", Help: "Number of entries written to storage per chunk.", Buckets: prometheus.ExponentialBuckets(1, 2, 5), }) )
Functions ¶
This section is empty.
Types ¶
type ChunkWriter ¶
type ChunkWriter interface { Put(ctx context.Context, chunks []chunk.Chunk) error PutOne(ctx context.Context, from, through model.Time, chunk chunk.Chunk) error }
func NewChunkWriter ¶
func NewChunkWriter(fetcher *fetcher.Fetcher, schemaCfg config.SchemaConfig, indexWriter index.Writer, disableIndexDeduplication bool) ChunkWriter
type CompositeStore ¶
type CompositeStore struct {
// contains filtered or unexported fields
}
CompositeStore is a Store which delegates to various stores depending on when they were activated.
func NewCompositeStore ¶
func NewCompositeStore(limits StoreLimits) *CompositeStore
NewCompositeStore creates a new Store which delegates to different stores depending on time.
func (*CompositeStore) AddStore ¶
func (c *CompositeStore) AddStore(start model.Time, fetcher *fetcher.Fetcher, index index.Reader, writer ChunkWriter, stop func())
func (CompositeStore) GetChunkFetcher ¶
func (CompositeStore) GetChunkRefs ¶
func (CompositeStore) LabelNamesForMetricName ¶
func (c CompositeStore) LabelNamesForMetricName(ctx context.Context, userID string, from, through model.Time, metricName string) ([]string, error)
LabelNamesForMetricName retrieves all label names for a metric name.
func (CompositeStore) LabelValuesForMetricName ¶
func (c CompositeStore) LabelValuesForMetricName(ctx context.Context, userID string, from, through model.Time, metricName string, labelName string, matchers ...*labels.Matcher) ([]string, error)
LabelValuesForMetricName retrieves all label values for a single label name and metric name.
func (CompositeStore) SetChunkFilterer ¶
func (c CompositeStore) SetChunkFilterer(chunkFilter chunk.RequestChunkFilterer)
func (*CompositeStore) Stores ¶
func (c *CompositeStore) Stores() []Store
type Store ¶
type Store interface { Put(ctx context.Context, chunks []chunk.Chunk) error PutOne(ctx context.Context, from, through model.Time, chunk chunk.Chunk) error // GetChunkRefs returns the un-loaded chunks and the fetchers to be used to load them. You can load each slice of chunks ([]Chunk), // using the corresponding Fetcher (fetchers[i].FetchChunks(ctx, chunks[i], ...) GetChunkRefs(ctx context.Context, userID string, from, through model.Time, matchers ...*labels.Matcher) ([][]chunk.Chunk, []*fetcher.Fetcher, error) GetSeries(ctx context.Context, userID string, from, through model.Time, matchers ...*labels.Matcher) ([]labels.Labels, error) LabelValuesForMetricName(ctx context.Context, userID string, from, through model.Time, metricName string, labelName string, matchers ...*labels.Matcher) ([]string, error) LabelNamesForMetricName(ctx context.Context, userID string, from, through model.Time, metricName string) ([]string, error) GetChunkFetcher(tm model.Time) *fetcher.Fetcher SetChunkFilterer(chunkFilter chunk.RequestChunkFilterer) Stats(ctx context.Context, userID string, from, through model.Time, matchers ...*labels.Matcher) (*stats.Stats, error) Stop() }
Store for chunks.
type StoreLimits ¶
Source Files ¶
Click to show internal directories.
Click to hide internal directories.