spanstore

package
v1.15.1 Latest Latest
Warning

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

Go to latest
Published: Nov 7, 2019 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrServiceNameNotSet occurs when attempting to query with an empty service name
	ErrServiceNameNotSet = errors.New("Service Name must be set")

	// ErrStartTimeMinGreaterThanMax occurs when start time min is above start time max
	ErrStartTimeMinGreaterThanMax = errors.New("Start Time Minimum is above Maximum")

	// ErrDurationMinGreaterThanMax occurs when duration min is above duration max
	ErrDurationMinGreaterThanMax = errors.New("Duration Minimum is above Maximum")

	// ErrMalformedRequestObject occurs when a request object is nil
	ErrMalformedRequestObject = errors.New("Malformed request object")

	// ErrStartAndEndTimeNotSet occurs when start time and end time are not set
	ErrStartAndEndTimeNotSet = errors.New("Start and End Time must be set")

	// ErrUnableToFindTraceIDAggregation occurs when an aggregation query for TraceIDs fail.
	ErrUnableToFindTraceIDAggregation = errors.New("Could not find aggregation of traceIDs")
)

Functions

This section is empty.

Types

type ServiceOperationStorage

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

ServiceOperationStorage stores service to operation pairs.

func NewServiceOperationStorage

func NewServiceOperationStorage(
	client es.Client,
	logger *zap.Logger,
	cacheTTL time.Duration,
) *ServiceOperationStorage

NewServiceOperationStorage returns a new ServiceOperationStorage.

func (*ServiceOperationStorage) Write

func (s *ServiceOperationStorage) Write(indexName string, jsonSpan *dbmodel.Span)

Write saves a service to operation pair.

type SpanReader

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

SpanReader can query for and load traces from ElasticSearch

func NewSpanReader

func NewSpanReader(p SpanReaderParams) *SpanReader

NewSpanReader returns a new SpanReader with a metrics.

func (*SpanReader) FindTraceIDs

func (s *SpanReader) FindTraceIDs(ctx context.Context, traceQuery *spanstore.TraceQueryParameters) ([]model.TraceID, error)

FindTraceIDs retrieves traces IDs that match the traceQuery

func (*SpanReader) FindTraces

func (s *SpanReader) FindTraces(ctx context.Context, traceQuery *spanstore.TraceQueryParameters) ([]*model.Trace, error)

FindTraces retrieves traces that match the traceQuery

func (*SpanReader) GetOperations

func (s *SpanReader) GetOperations(ctx context.Context, service string) ([]string, error)

GetOperations returns all operations for a specific service traced by Jaeger

func (*SpanReader) GetServices

func (s *SpanReader) GetServices(ctx context.Context) ([]string, error)

GetServices returns all services traced by Jaeger, ordered by frequency

func (*SpanReader) GetTrace

func (s *SpanReader) GetTrace(ctx context.Context, traceID model.TraceID) (*model.Trace, error)

GetTrace takes a traceID and returns a Trace associated with that traceID

type SpanReaderParams

type SpanReaderParams struct {
	Client              es.Client
	Logger              *zap.Logger
	MaxSpanAge          time.Duration
	MaxNumSpans         int
	MetricsFactory      metrics.Factory
	IndexPrefix         string
	TagDotReplacement   string
	Archive             bool
	UseReadWriteAliases bool
}

SpanReaderParams holds constructor params for NewSpanReader

type SpanWriter

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

SpanWriter is a wrapper around elastic.Client

func NewSpanWriter

func NewSpanWriter(p SpanWriterParams) *SpanWriter

NewSpanWriter creates a new SpanWriter for use

func (*SpanWriter) Close

func (s *SpanWriter) Close() error

Close closes SpanWriter

func (*SpanWriter) CreateTemplates

func (s *SpanWriter) CreateTemplates(spanTemplate, serviceTemplate string) error

CreateTemplates creates index templates.

func (*SpanWriter) WriteSpan

func (s *SpanWriter) WriteSpan(span *model.Span) error

WriteSpan writes a span and its corresponding service:operation in ElasticSearch

type SpanWriterParams

type SpanWriterParams struct {
	Client              es.Client
	Logger              *zap.Logger
	MetricsFactory      metrics.Factory
	IndexPrefix         string
	AllTagsAsFields     bool
	TagKeysAsFields     []string
	TagDotReplacement   string
	Archive             bool
	UseReadWriteAliases bool
}

SpanWriterParams holds constructor parameters for NewSpanWriter

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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