deepend

package
v0.0.0-...-9ea754e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2017 License: GPL-3.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AggregatorConfig

type AggregatorConfig struct {
	FlushEvery time.Duration
}

type AggregatorWorker

type AggregatorWorker struct {
	// contains filtered or unexported fields
}

func CreateAndStartAggregatorWorker

func CreateAndStartAggregatorWorker(
	flushChannel chan<- *CounterAggregator,
	config *AggregatorConfig) *AggregatorWorker

func (*AggregatorWorker) GetRequestChannel

func (worker *AggregatorWorker) GetRequestChannel() chan *pb.RecordCounterRequest

func (*AggregatorWorker) Stop

func (worker *AggregatorWorker) Stop()

type Compactor

type Compactor struct {
	// contains filtered or unexported fields
}

func CreateAndStartCompactor

func CreateAndStartCompactor(config *CompactorConfig) *Compactor

func (*Compactor) Stop

func (compactor *Compactor) Stop()

type CompactorConfig

type CompactorConfig struct {
	RunEvery      time.Duration
	BaseDirectory string
}

type CounterAggregator

type CounterAggregator struct {
	// contains filtered or unexported fields
}

func NewCounterAggregator

func NewCounterAggregator() *CounterAggregator

func (*CounterAggregator) AddBlockInPlace

func (aggregator *CounterAggregator) AddBlockInPlace(block *pb.RecordBlock)

func (*CounterAggregator) AddInPlace

func (aggregator *CounterAggregator) AddInPlace(
	name string,
	source string,
	epochMinute int32,
	values *pb.CounterValues)

func (*CounterAggregator) AsBlock

func (aggregator *CounterAggregator) AsBlock() *pb.RecordBlock

func (*CounterAggregator) CombineInPlace

func (aggregator *CounterAggregator) CombineInPlace(other *CounterAggregator)

func (*CounterAggregator) IsEmpty

func (aggregator *CounterAggregator) IsEmpty() bool

type CounterShard

type CounterShard struct {
	// contains filtered or unexported fields
}

func NewCounterShard

func NewCounterShard(config *ShardConfig) *CounterShard

func (*CounterShard) RecordCounter

func (shard *CounterShard) RecordCounter(request *pb.RecordCounterRequest)

func (*CounterShard) Stop

func (shard *CounterShard) Stop()

type FlushWriter

type FlushWriter struct {
	// contains filtered or unexported fields
}

func CreateAndStartFlushWriter

func CreateAndStartFlushWriter(config *WriterConfig) *FlushWriter

func (*FlushWriter) GetAggregatorChannel

func (writer *FlushWriter) GetAggregatorChannel() chan *CounterAggregator

func (*FlushWriter) Stop

func (writer *FlushWriter) Stop()

type RequestDispatcher

type RequestDispatcher struct {
	// contains filtered or unexported fields
}

func NewRequestDispatcher

func NewRequestDispatcher(
	channels [](chan<- *pb.RecordCounterRequest)) *RequestDispatcher

func (*RequestDispatcher) Dispatch

func (dispatcher *RequestDispatcher) Dispatch(request *pb.RecordCounterRequest)

type ShardConfig

type ShardConfig struct {
	Workers          int
	AggregatorConfig *AggregatorConfig
	WriterConfig     *WriterConfig
	CompactorConfig  *CompactorConfig
}

type WriterConfig

type WriterConfig struct {
	FlushEvery    time.Duration
	BaseDirectory string
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL