Documentation
      ¶
    
    
  
    
  
    Index ¶
- func GetSeriesToChunkMapping(HashValue string, RangeValue []byte) (user string, index int, seriesID string, chunkID string, err error)
 - func IsMetricLabelToLabelValueMapping(RangeValue []byte) bool
 - func IsMetricToSeriesMapping(RangeValue []byte) bool
 - func IsSeriesToChunkMapping(RangeValue []byte) bool
 - func IsSeriesToLabelValues(RangeValue []byte) bool
 - func UnknownIndexEntryType(RangeValue []byte) string
 - type Config
 - type IndexEntryProcessor
 - type IndexReader
 - type Scanner
 
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetSeriesToChunkMapping ¶
func GetSeriesToChunkMapping(HashValue string, RangeValue []byte) (user string, index int, seriesID string, chunkID string, err error)
e.RangeValue is: "userID:d<Index>:base64(sha256(labels))". Index is integer, base64 doesn't contain ':'.
func IsMetricToSeriesMapping ¶
func IsSeriesToChunkMapping ¶
Series to Chunk mapping uses \0 "3" \0 suffix of range value.
func IsSeriesToLabelValues ¶
func UnknownIndexEntryType ¶
Types ¶
type Config ¶
type Config struct {
	TableNames  string
	TablesLimit int
	PeriodStart flagext.DayValue
	PeriodEnd   flagext.DayValue
	OutputDirectory string
	Concurrency     int
	VerifyPlans bool
	UploadFiles bool
	KeepFiles   bool
	AllowedUsers       string
	IgnoredUserPattern string
}
    func (*Config) RegisterFlags ¶
type IndexEntryProcessor ¶
type IndexEntryProcessor interface {
	ProcessIndexEntry(indexEntry chunk.IndexEntry) error
	// Called at the end of reading of index entries.
	Flush() error
}
    Processor that receives index entries from the table.
type IndexReader ¶
type IndexReader interface {
	IndexTableNames(ctx context.Context) ([]string, error)
	// Reads a single table from index, and passes individual index entries to the processors.
	//
	// All entries with the same TableName, HashValue and RangeValue are passed to the same processor,
	// and all such entries (with different Values) are passed before index entries with different
	// values of HashValue and RangeValue are passed to the same processor.
	//
	// This allows IndexEntryProcessor to find when values for given Hash and Range finish:
	// as soon as new Hash and Range differ from last IndexEntry.
	//
	// Index entries passed to the same processor arrive sorted by HashValue and RangeValue.
	ReadIndexEntries(ctx context.Context, table string, processors []IndexEntryProcessor) error
}
    IndexReader parses index entries and passes them to the IndexEntryProcessor.
type Scanner ¶
func NewScanner ¶
func NewScanner(cfg Config, scfg blocksconvert.SharedConfig, l log.Logger, reg prometheus.Registerer) (*Scanner, error)
 Click to show internal directories. 
   Click to hide internal directories.