source

package
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Aug 15, 2024 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Hour   = time.Hour
	Hour3  = 3 * Hour
	Hour6  = 6 * Hour
	Hour12 = 12 * Hour
	Day    = 24 * Hour
	Day3   = 3 * Day
	Day7   = 7 * Day
	Month  = 30 * Day // just 30 day
	Month3 = 3 * Month
)

Variables

This section is empty.

Functions

func FetchSpanFromES

func FetchSpanFromES(ctx context.Context, storage storage.Storage, sel storage.Selector, forward bool, limit int) (list []*trace.Span, err error)

func GetInterval

func GetInterval(duration int64) (int64, string, int64)

Types

type CassandraSource

type CassandraSource struct {
	CassandraSession *cassandra.Session
	Log              logs.Logger

	CompatibleSource TraceSource
}

func (*CassandraSource) GetSpanCount

func (cs *CassandraSource) GetSpanCount(ctx context.Context, traceID string) int64

func (*CassandraSource) GetSpans

func (cs *CassandraSource) GetSpans(ctx context.Context, req *pb.GetSpansRequest) []*pb.Span

func (*CassandraSource) GetTraceReqDistribution

func (cs *CassandraSource) GetTraceReqDistribution(ctx context.Context, model custom.Model) ([]*TraceDistributionItem, error)

func (*CassandraSource) GetTraces

type ClickhouseSource

type ClickhouseSource struct {
	Clickhouse clickhouse.Interface
	Log        logs.Logger
	DebugSQL   bool
	Loader     loader.Interface

	CompatibleSource TraceSource
}

func (*ClickhouseSource) GetSpanCount

func (chs *ClickhouseSource) GetSpanCount(ctx context.Context, traceID string) int64

func (*ClickhouseSource) GetSpans

func (chs *ClickhouseSource) GetSpans(ctx context.Context, req *pb.GetSpansRequest) []*pb.Span

func (*ClickhouseSource) GetTraceReqDistribution

func (chs *ClickhouseSource) GetTraceReqDistribution(ctx context.Context, model custom.Model) ([]*TraceDistributionItem, error)

func (*ClickhouseSource) GetTraces

type ElasticsearchSource

type ElasticsearchSource struct {
	StorageReader storage.Storage
	Metric        metricpb.MetricServiceServer
	Log           logs.Logger

	CompatibleSource TraceSource
}

func (*ElasticsearchSource) GetSpanCount

func (esc *ElasticsearchSource) GetSpanCount(ctx context.Context, traceID string) int64

func (ElasticsearchSource) GetSpans

func (esc ElasticsearchSource) GetSpans(ctx context.Context, req *pb.GetSpansRequest) []*pb.Span

func (ElasticsearchSource) GetTraceReqDistribution

func (esc ElasticsearchSource) GetTraceReqDistribution(ctx context.Context, model custom.Model) ([]*TraceDistributionItem, error)

func (ElasticsearchSource) GetTraces

func (ElasticsearchSource) GetTracesCount

func (esc ElasticsearchSource) GetTracesCount(ctx context.Context, startTime, endTime int64, params map[string]*structpb.Value, statement string) (int64, error)

type TraceDistributionItem

type TraceDistributionItem struct {
	Date        string  `ch:"date"`
	AvgDuration float64 `ch:"avg_duration"`
	Count       uint64  `ch:"trace_count"`
}

type TraceSource

type TraceSource interface {
	GetSpans(ctx context.Context, req *pb.GetSpansRequest) []*pb.Span
	GetSpanCount(ctx context.Context, traceID string) int64
	GetTraceReqDistribution(ctx context.Context, model custom.Model) ([]*TraceDistributionItem, error)
	GetTraces(ctx context.Context, req *pb.GetTracesRequest) (*pb.GetTracesResponse, error)
}

Jump to

Keyboard shortcuts

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