trace

package
v0.11.52 Latest Latest
Warning

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

Go to latest
Published: Jun 24, 2020 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewPipeToggleMatchers

func NewPipeToggleMatchers(request *trace_pb.TogglePipeTracesRequest) (*PipeToggleMatchers, *ToggleResult)

Types

type ChannelPeekHandler

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

func NewChannelPeekHandler

func NewChannelPeekHandler(appId *identity.TokenId, ch channel2.Channel, controller Controller, eventSink EventHandler) *ChannelPeekHandler

func (*ChannelPeekHandler) Close

func (handler *ChannelPeekHandler) Close(ch channel2.Channel)

func (*ChannelPeekHandler) Connect

func (*ChannelPeekHandler) Connect(ch channel2.Channel, remoteAddress string)

func (*ChannelPeekHandler) DisableTracing

func (handler *ChannelPeekHandler) DisableTracing(sourceType SourceType, matcher SourceMatcher, resultChan chan<- ToggleApplyResult)

func (*ChannelPeekHandler) EnableTracing

func (handler *ChannelPeekHandler) EnableTracing(sourceType SourceType, matcher SourceMatcher, resultChan chan<- ToggleApplyResult)

func (*ChannelPeekHandler) IsEnabled

func (handler *ChannelPeekHandler) IsEnabled() bool

func (*ChannelPeekHandler) Rx

func (handler *ChannelPeekHandler) Rx(msg *channel2.Message, ch channel2.Channel)

func (*ChannelPeekHandler) ToggleTracing

func (handler *ChannelPeekHandler) ToggleTracing(sourceType SourceType, matcher SourceMatcher, enable bool, resultChan chan<- ToggleApplyResult)

func (*ChannelPeekHandler) Tx

func (handler *ChannelPeekHandler) Tx(msg *channel2.Message, ch channel2.Channel)

type Controller

type Controller interface {
	EnableTracing(sourceType SourceType, matcher SourceMatcher, resultChan chan<- ToggleApplyResult)
	DisableTracing(sourceType SourceType, matcher SourceMatcher, resultChan chan<- ToggleApplyResult)
	AddSource(source Source)
	RemoveSource(source Source)
	Shutdown()
}

func NewController

func NewController() Controller

type EventController

type EventController interface {
	EventHandler
	channel2.ReceiveHandler

	// AddHandler adds the given handler to the router
	AddHandler(handler EventHandler)

	// RemoveHandler removes the given handler from the router
	RemoveHandler(handler EventHandler)

	// Shutdown stops the router
	Shutdown()
}

EventController allows for sending session changes to multiple Listeners

func NewEventController

func NewEventController() EventController

NewEventController creates a new EventController instance

type EventHandler

type EventHandler interface {
	Accept(event *trace_pb.ChannelMessage)
}

EventHandler is for types wishing to receive trace messages

func NewChannelSink

func NewChannelSink(ch channel2.Channel) EventHandler

type Filter

type Filter interface {
	Accept(event *tracepb.ChannelMessage) bool
}

func NewAllowAllFilter

func NewAllowAllFilter() Filter

func NewExcludeFilter

func NewExcludeFilter(excludedContentTypes []int32) Filter

func NewIncludeFilter

func NewIncludeFilter(includedContentTypes []int32) Filter

type PipeToggleMatchers

type PipeToggleMatchers struct {
	AppMatcher  SourceMatcher
	PipeMatcher SourceMatcher
}

type Source

type Source interface {
	EnableTracing(sourceType SourceType, matcher SourceMatcher, resultChan chan<- ToggleApplyResult)
	DisableTracing(sourceType SourceType, matcher SourceMatcher, resultChan chan<- ToggleApplyResult)
}

type SourceMatcher

type SourceMatcher interface {
	Matches(source string) bool
}

func NewSourceMatcher

func NewSourceMatcher(regex *regexp.Regexp) SourceMatcher

type SourceType

type SourceType int
const (
	SourceTypePipe SourceType = iota
)

type ToggleApplyResult

type ToggleApplyResult interface {
	IsMatched() bool
	GetMessage() string
	Append(result *ToggleResult, verbosity ToggleVerbosity)
}

type ToggleApplyResultImpl

type ToggleApplyResultImpl struct {
	Matched bool
	Message string
}

func (*ToggleApplyResultImpl) Append

func (applyResult *ToggleApplyResultImpl) Append(result *ToggleResult, verbosity ToggleVerbosity)

func (*ToggleApplyResultImpl) GetMessage

func (applyResult *ToggleApplyResultImpl) GetMessage() string

func (*ToggleApplyResultImpl) IsMatched

func (applyResult *ToggleApplyResultImpl) IsMatched() bool

type ToggleResult

type ToggleResult struct {
	Success bool
	Message *strings.Builder
}

func (*ToggleResult) Append

func (result *ToggleResult) Append(msg string)

type ToggleVerbosity

type ToggleVerbosity int
const (
	ToggleVerbosityNone ToggleVerbosity = iota
	ToggleVerbosityMatches
	ToggleVerbosityMisses
	ToggleVerbosityAll
)

func GetVerbosity

func GetVerbosity(verbosity trace_pb.TraceToggleVerbosity) ToggleVerbosity

func (ToggleVerbosity) Show

func (val ToggleVerbosity) Show(matched bool) bool

type XgressPeekHandler

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

func NewXgressPeekHandler

func NewXgressPeekHandler(appId *identity.TokenId, controller Controller, eventSink EventHandler) *XgressPeekHandler

func (*XgressPeekHandler) Close

func (handler *XgressPeekHandler) Close(x *xgress.Xgress)

func (*XgressPeekHandler) DisableTracing

func (handler *XgressPeekHandler) DisableTracing(sourceType SourceType, matcher SourceMatcher, resultChan chan<- ToggleApplyResult)

func (*XgressPeekHandler) EnableTracing

func (handler *XgressPeekHandler) EnableTracing(sourceType SourceType, matcher SourceMatcher, resultChan chan<- ToggleApplyResult)

func (*XgressPeekHandler) IsEnabled

func (handler *XgressPeekHandler) IsEnabled() bool

func (*XgressPeekHandler) Rx

func (handler *XgressPeekHandler) Rx(x *xgress.Xgress, payload *xgress.Payload)

func (*XgressPeekHandler) ToggleTracing

func (handler *XgressPeekHandler) ToggleTracing(sourceType SourceType, matcher SourceMatcher, enable bool, resultChan chan<- ToggleApplyResult)

func (*XgressPeekHandler) Tx

func (handler *XgressPeekHandler) Tx(x *xgress.Xgress, payload *xgress.Payload)

Jump to

Keyboard shortcuts

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