Help us shape the future of Go! Take the 2026 Go Developer Survey

remote

package
v1.8.1 Latest Latest
Warning

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

Go to latest
Published: Oct 23, 2017 License: Apache-2.0 Imports: 25 Imported by: 0

Documentation

Overview

Package remote is a generated protocol buffer package.

It is generated from these files:

remote.proto

It has these top-level messages:

Sample
LabelPair
TimeSeries
WriteRequest
ReadRequest
ReadResponse
Query
LabelMatcher
QueryResult

Index

Constants

This section is empty.

Variables

View Source
var MatchType_name = map[int32]string{
	0: "EQUAL",
	1: "NOT_EQUAL",
	2: "REGEX_MATCH",
	3: "REGEX_NO_MATCH",
}
View Source
var MatchType_value = map[string]int32{
	"EQUAL":          0,
	"NOT_EQUAL":      1,
	"REGEX_MATCH":    2,
	"REGEX_NO_MATCH": 3,
}

Functions

func EncodeReadResponse added in v1.8.0

func EncodeReadResponse(resp *ReadResponse, w http.ResponseWriter) error

EncodeReadResponse writes a remote.Response to a http.ResponseWriter.

func FromLabelPairs added in v1.8.0

func FromLabelPairs(labelPairs []*LabelPair) model.Metric

FromLabelPairs unpack a []LabelPair to a model.Metric

func FromQuery added in v1.8.0

func FromQuery(req *Query) (model.Time, model.Time, []*metric.LabelMatcher, error)

FromQuery unpacks a Query proto.

func FromQueryResult added in v1.8.0

func FromQueryResult(resp *QueryResult) model.Matrix

FromQueryResult unpacks a QueryResult proto.

func IteratorsToMatrix added in v1.8.0

func IteratorsToMatrix(iters []local.SeriesIterator, interval metric.Interval) model.Matrix

IteratorsToMatrix converts a list of iterators into a model.Matrix.

func MatrixToIterators added in v1.6.0

func MatrixToIterators(m model.Matrix, err error) ([]local.SeriesIterator, error)

MatrixToIterators returns series iterators for a given matrix.

Types

type Client added in v1.1.0

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

Client allows reading and writing from/to a remote HTTP endpoint.

func NewClient added in v1.1.0

func NewClient(index int, conf *ClientConfig) (*Client, error)

NewClient creates a new Client.

func (Client) Name added in v1.1.0

func (c Client) Name() string

Name identifies the client.

func (*Client) Read added in v1.6.0

func (c *Client) Read(ctx context.Context, from, through model.Time, matchers metric.LabelMatchers) (model.Matrix, error)

Read reads from a remote endpoint.

func (*Client) Store added in v1.1.0

func (c *Client) Store(samples model.Samples) error

Store sends a batch of samples to the HTTP endpoint.

type ClientConfig added in v1.8.0

type ClientConfig struct {
	URL              *config.URL
	Timeout          model.Duration
	HTTPClientConfig config.HTTPClientConfig
}

ClientConfig configures a Client.

type LabelMatcher added in v1.6.0

type LabelMatcher struct {
	Type  MatchType `protobuf:"varint,1,opt,name=type,enum=remote.MatchType" json:"type,omitempty"`
	Name  string    `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
	Value string    `protobuf:"bytes,3,opt,name=value" json:"value,omitempty"`
}

func (*LabelMatcher) Descriptor added in v1.6.0

func (*LabelMatcher) Descriptor() ([]byte, []int)

func (*LabelMatcher) GetName added in v1.6.0

func (m *LabelMatcher) GetName() string

func (*LabelMatcher) GetType added in v1.6.0

func (m *LabelMatcher) GetType() MatchType

func (*LabelMatcher) GetValue added in v1.6.0

func (m *LabelMatcher) GetValue() string

func (*LabelMatcher) ProtoMessage added in v1.6.0

func (*LabelMatcher) ProtoMessage()

func (*LabelMatcher) Reset added in v1.6.0

func (m *LabelMatcher) Reset()

func (*LabelMatcher) String added in v1.6.0

func (m *LabelMatcher) String() string

type LabelPair added in v1.1.0

type LabelPair struct {
	Name  string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	Value string `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"`
}

func ToLabelPairs added in v1.8.0

func ToLabelPairs(metric model.Metric) []*LabelPair

ToLabelPairs builds a []LabelPair from a model.Metric

func (*LabelPair) Descriptor added in v1.1.0

func (*LabelPair) Descriptor() ([]byte, []int)

func (*LabelPair) GetName added in v1.6.0

func (m *LabelPair) GetName() string

func (*LabelPair) GetValue added in v1.6.0

func (m *LabelPair) GetValue() string

func (*LabelPair) ProtoMessage added in v1.1.0

func (*LabelPair) ProtoMessage()

func (*LabelPair) Reset added in v1.1.0

func (m *LabelPair) Reset()

func (*LabelPair) String added in v1.1.0

func (m *LabelPair) String() string

type MatchType added in v1.6.0

type MatchType int32
const (
	MatchType_EQUAL          MatchType = 0
	MatchType_NOT_EQUAL      MatchType = 1
	MatchType_REGEX_MATCH    MatchType = 2
	MatchType_REGEX_NO_MATCH MatchType = 3
)

func (MatchType) EnumDescriptor added in v1.6.0

func (MatchType) EnumDescriptor() ([]byte, []int)

func (MatchType) String added in v1.6.0

func (x MatchType) String() string

type Query added in v1.6.0

type Query struct {
	StartTimestampMs int64           `protobuf:"varint,1,opt,name=start_timestamp_ms,json=startTimestampMs" json:"start_timestamp_ms,omitempty"`
	EndTimestampMs   int64           `protobuf:"varint,2,opt,name=end_timestamp_ms,json=endTimestampMs" json:"end_timestamp_ms,omitempty"`
	Matchers         []*LabelMatcher `protobuf:"bytes,3,rep,name=matchers" json:"matchers,omitempty"`
}

func ToQuery added in v1.8.0

func ToQuery(from, to model.Time, matchers []*metric.LabelMatcher) (*Query, error)

ToQuery builds a Query proto.

func (*Query) Descriptor added in v1.6.0

func (*Query) Descriptor() ([]byte, []int)

func (*Query) GetEndTimestampMs added in v1.6.0

func (m *Query) GetEndTimestampMs() int64

func (*Query) GetMatchers added in v1.6.0

func (m *Query) GetMatchers() []*LabelMatcher

func (*Query) GetStartTimestampMs added in v1.6.0

func (m *Query) GetStartTimestampMs() int64

func (*Query) ProtoMessage added in v1.6.0

func (*Query) ProtoMessage()

func (*Query) Reset added in v1.6.0

func (m *Query) Reset()

func (*Query) String added in v1.6.0

func (m *Query) String() string

type QueryResult added in v1.6.0

type QueryResult struct {
	Timeseries []*TimeSeries `protobuf:"bytes,1,rep,name=timeseries" json:"timeseries,omitempty"`
}

func ToQueryResult added in v1.8.0

func ToQueryResult(matrix model.Matrix) *QueryResult

ToQueryResult builds a QueryResult proto.

func (*QueryResult) Descriptor added in v1.6.0

func (*QueryResult) Descriptor() ([]byte, []int)

func (*QueryResult) GetTimeseries added in v1.6.0

func (m *QueryResult) GetTimeseries() []*TimeSeries

func (*QueryResult) ProtoMessage added in v1.6.0

func (*QueryResult) ProtoMessage()

func (*QueryResult) Reset added in v1.6.0

func (m *QueryResult) Reset()

func (*QueryResult) String added in v1.6.0

func (m *QueryResult) String() string

type QueueManager added in v1.6.0

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

QueueManager manages a queue of samples to be sent to the Storage indicated by the provided StorageClient.

func NewQueueManager added in v1.6.0

func NewQueueManager(cfg config.QueueConfig, externalLabels model.LabelSet, relabelConfigs []*config.RelabelConfig, client StorageClient) *QueueManager

NewQueueManager builds a new QueueManager.

func (*QueueManager) Append added in v1.6.0

func (t *QueueManager) Append(s *model.Sample) error

Append queues a sample to be sent to the remote storage. It drops the sample on the floor if the queue is full. Always returns nil.

func (*QueueManager) NeedsThrottling added in v1.6.0

func (*QueueManager) NeedsThrottling() bool

NeedsThrottling implements storage.SampleAppender. It will always return false as a remote storage drops samples on the floor if backlogging instead of asking for throttling.

func (*QueueManager) Start added in v1.6.0

func (t *QueueManager) Start()

Start the queue manager sending samples to the remote storage. Does not block.

func (*QueueManager) Stop added in v1.6.0

func (t *QueueManager) Stop()

Stop stops sending samples to the remote storage and waits for pending sends to complete.

type ReadRequest added in v1.6.0

type ReadRequest struct {
	Queries []*Query `protobuf:"bytes,1,rep,name=queries" json:"queries,omitempty"`
}

func DecodeReadRequest added in v1.8.0

func DecodeReadRequest(r *http.Request) (*ReadRequest, error)

DecodeReadRequest reads a remote.Request from a http.Request.

func (*ReadRequest) Descriptor added in v1.6.0

func (*ReadRequest) Descriptor() ([]byte, []int)

func (*ReadRequest) GetQueries added in v1.6.0

func (m *ReadRequest) GetQueries() []*Query

func (*ReadRequest) ProtoMessage added in v1.6.0

func (*ReadRequest) ProtoMessage()

func (*ReadRequest) Reset added in v1.6.0

func (m *ReadRequest) Reset()

func (*ReadRequest) String added in v1.6.0

func (m *ReadRequest) String() string

type ReadResponse added in v1.6.0

type ReadResponse struct {
	// In same order as the request's queries.
	Results []*QueryResult `protobuf:"bytes,1,rep,name=results" json:"results,omitempty"`
}

func (*ReadResponse) Descriptor added in v1.6.0

func (*ReadResponse) Descriptor() ([]byte, []int)

func (*ReadResponse) GetResults added in v1.6.0

func (m *ReadResponse) GetResults() []*QueryResult

func (*ReadResponse) ProtoMessage added in v1.6.0

func (*ReadResponse) ProtoMessage()

func (*ReadResponse) Reset added in v1.6.0

func (m *ReadResponse) Reset()

func (*ReadResponse) String added in v1.6.0

func (m *ReadResponse) String() string

type Reader added in v1.6.0

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

Reader allows reading from multiple remote sources.

func (*Reader) ApplyConfig added in v1.6.0

func (r *Reader) ApplyConfig(conf *config.Config) error

ApplyConfig updates the state as the new config requires.

func (*Reader) Queriers added in v1.6.0

func (r *Reader) Queriers() []local.Querier

Queriers returns a list of Queriers for the currently configured remote read endpoints.

type Sample added in v1.1.0

type Sample struct {
	Value       float64 `protobuf:"fixed64,1,opt,name=value" json:"value,omitempty"`
	TimestampMs int64   `protobuf:"varint,2,opt,name=timestamp_ms,json=timestampMs" json:"timestamp_ms,omitempty"`
}

func (*Sample) Descriptor added in v1.1.0

func (*Sample) Descriptor() ([]byte, []int)

func (*Sample) GetTimestampMs added in v1.6.0

func (m *Sample) GetTimestampMs() int64

func (*Sample) GetValue added in v1.6.0

func (m *Sample) GetValue() float64

func (*Sample) ProtoMessage added in v1.1.0

func (*Sample) ProtoMessage()

func (*Sample) Reset added in v1.1.0

func (m *Sample) Reset()

func (*Sample) String added in v1.1.0

func (m *Sample) String() string

type StorageClient

type StorageClient interface {
	// Store stores the given samples in the remote storage.
	Store(model.Samples) error
	// Name identifies the remote storage implementation.
	Name() string
}

StorageClient defines an interface for sending a batch of samples to an external timeseries database.

type TimeSeries added in v1.1.0

type TimeSeries struct {
	Labels []*LabelPair `protobuf:"bytes,1,rep,name=labels" json:"labels,omitempty"`
	// Sorted by time, oldest sample first.
	Samples []*Sample `protobuf:"bytes,2,rep,name=samples" json:"samples,omitempty"`
}

func (*TimeSeries) Descriptor added in v1.1.0

func (*TimeSeries) Descriptor() ([]byte, []int)

func (*TimeSeries) GetLabels added in v1.1.0

func (m *TimeSeries) GetLabels() []*LabelPair

func (*TimeSeries) GetSamples added in v1.1.0

func (m *TimeSeries) GetSamples() []*Sample

func (*TimeSeries) ProtoMessage added in v1.1.0

func (*TimeSeries) ProtoMessage()

func (*TimeSeries) Reset added in v1.1.0

func (m *TimeSeries) Reset()

func (*TimeSeries) String added in v1.1.0

func (m *TimeSeries) String() string

type WriteRequest added in v1.1.0

type WriteRequest struct {
	Timeseries []*TimeSeries `protobuf:"bytes,1,rep,name=timeseries" json:"timeseries,omitempty"`
}

func ToWriteRequest added in v1.8.0

func ToWriteRequest(samples []*model.Sample) *WriteRequest

ToWriteRequest converts an array of samples into a WriteRequest proto.

func (*WriteRequest) Descriptor added in v1.1.0

func (*WriteRequest) Descriptor() ([]byte, []int)

func (*WriteRequest) GetTimeseries added in v1.1.0

func (m *WriteRequest) GetTimeseries() []*TimeSeries

func (*WriteRequest) ProtoMessage added in v1.1.0

func (*WriteRequest) ProtoMessage()

func (*WriteRequest) Reset added in v1.1.0

func (m *WriteRequest) Reset()

func (*WriteRequest) String added in v1.1.0

func (m *WriteRequest) String() string

type Writer added in v1.6.0

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

Writer allows queueing samples for remote writes.

func (*Writer) Append added in v1.6.0

func (w *Writer) Append(smpl *model.Sample) error

Append implements storage.SampleAppender. Always returns nil.

func (*Writer) ApplyConfig added in v1.6.0

func (w *Writer) ApplyConfig(conf *config.Config) error

ApplyConfig updates the state as the new config requires.

func (*Writer) NeedsThrottling added in v1.6.0

func (w *Writer) NeedsThrottling() bool

NeedsThrottling implements storage.SampleAppender. It will always return false as a remote storage drops samples on the floor if backlogging instead of asking for throttling.

func (*Writer) Stop added in v1.6.0

func (w *Writer) Stop()

Stop the background processing of the storage queues.

Jump to

Keyboard shortcuts

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