eventdata

package
v0.9.5 Latest Latest
Warning

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

Go to latest
Published: Nov 16, 2019 License: Apache-2.0 Imports: 22 Imported by: 70

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Max added in v0.7.9

func Max(x int, y int) int

func Min added in v0.7.9

func Min(x int, y int) int

func SetMax added in v0.7.9

func SetMax(x *int, y int)

func SetMin added in v0.7.9

func SetMin(x *int, y int)

Types

type EventData

type EventData struct {

	// This time it set at clone time
	StatsTime time.Time
	// Key: appId
	AppMap  map[string]*eventApp.AppStats
	CellMap map[string]*eventCell.CellStats
	// Domain name: Both shared + private
	DomainMap map[string]*eventRoute.DomainStats

	// ***** TODO BEGIN: Track AppRouteStats in a map here (as well as in DomainMap object tree)
	// So that we have easy access to the data for use on AppDetail: HTTP Info Views
	// ISSUE: If we hold onto a objecct pointer to AppRouteStats from two different loccations:
	// AppRouteStatsMap and downstream from DomainMap, if we do a "deepcopy" during clone, do
	// we end up with two complete copies of the data??  That would be bad (time/memory footprint)
	//
	// IDEA: To fix the above problem, what if we change eventRoute.RouteStats object to just
	// hold onto an array of AppIds and not a map of the real AppRouteStats object?  The code
	// code would just use the AppId and lookup the AppRouteStats object from map in EventData
	// object.  Example change in eventRoute.RouteStats object:
	//    from: AppRouteStatsMap map[string]*AppRouteStats
	//    to:   AppIds []*string
	//
	// ISSUE2: I just realized why the above will not work -- the current solution of having
	// a map of *AppRouteStats within each route is to handle tracking how much traffic comes
	// in through that route -- meaning an app can have multiple route and we want to track
	// traffic seperately for each route even though its going to the same app.
	//
	// Key: appId
	AppRouteStatsMap map[string]*eventRoute.AppRouteStats

	EventTypeMap map[events.Envelope_EventType]*eventEventType.EventTypeStats

	EnableRouteTracking bool
	TotalEvents         int64
	// contains filtered or unexported fields
}

func NewEventData

func NewEventData(mu *sync.Mutex, eventProcessor *EventProcessor) *EventData

func (*EventData) AssignIsolationSegment added in v0.8.2

func (ed *EventData) AssignIsolationSegment(cellStats *eventCell.CellStats)

func (*EventData) Clear

func (ed *EventData) Clear()

func (*EventData) Clone

func (ed *EventData) Clone() *EventData

Yuck -- need to figure out a getter way to clone the current data object Specifically around RateCounter and AvgTracker object

func (*EventData) FindEventTypeStats added in v0.7.6

func (ed *EventData) FindEventTypeStats(eventType events.Envelope_EventType) *eventEventType.EventTypeStats

func (*EventData) GetAppRouteStats added in v0.7.6

func (ed *EventData) GetAppRouteStats(uri string, domain string, host string, port string, path string, appId string) *eventRoute.AppRouteStats

func (*EventData) GetTotalEvents

func (ed *EventData) GetTotalEvents() int64

func (*EventData) Process

func (ed *EventData) Process(instanceId int, msg *events.Envelope)

func (*EventData) UpdateEventStats added in v0.7.6

func (ed *EventData) UpdateEventStats(msg *events.Envelope)

type EventLogHttpAccess added in v0.7.3

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

func NewEventLogHttpAccess added in v0.7.3

func NewEventLogHttpAccess() *EventLogHttpAccess

type EventProcessor

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

func NewEventProcessor

func NewEventProcessor(cliConnection plugin.CliConnection, privileged bool, statusMsg chan string) *EventProcessor

func (*EventProcessor) ClearStats

func (ep *EventProcessor) ClearStats() error

func (*EventProcessor) FlushCache added in v0.8.0

func (ep *EventProcessor) FlushCache()

func (*EventProcessor) GetCliConnection added in v0.7.3

func (ep *EventProcessor) GetCliConnection() plugin.CliConnection

func (*EventProcessor) GetCurrentEventData

func (ep *EventProcessor) GetCurrentEventData() *EventData

func (*EventProcessor) GetCurrentEventRateHistory added in v0.7.9

func (ep *EventProcessor) GetCurrentEventRateHistory() *EventRateHistory

func (*EventProcessor) GetDisplayedEventData

func (ep *EventProcessor) GetDisplayedEventData() *EventData

func (*EventProcessor) GetMetadataManager added in v0.7.3

func (ep *EventProcessor) GetMetadataManager() *metadata.GlobalManager

func (*EventProcessor) LoadCacheAndSeedData added in v0.7.6

func (ep *EventProcessor) LoadCacheAndSeedData()

func (*EventProcessor) Process

func (ep *EventProcessor) Process(instanceId int, msg *events.Envelope)

func (*EventProcessor) SeedStatsFromMetadata

func (ep *EventProcessor) SeedStatsFromMetadata()

func (*EventProcessor) Start

func (ep *EventProcessor) Start()

func (*EventProcessor) UpdateData

func (ep *EventProcessor) UpdateData()

type EventRate added in v0.7.9

type EventRate struct {
	BeginTime          time.Time
	EndTime            time.Time
	EventRateDetailMap map[events.Envelope_EventType]*EventRateDetail
	TotalHigh          int
}

type EventRateDetail added in v0.7.9

type EventRateDetail struct {
	RateHigh int
}

type EventRateHistory added in v0.7.9

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

func NewEventRateHistory added in v0.7.9

func NewEventRateHistory(ep *EventProcessor) *EventRateHistory

func (*EventRateHistory) GetCurrentHistory added in v0.7.9

func (erh *EventRateHistory) GetCurrentHistory() []*EventRate

func (*EventRateHistory) GetCurrentRate added in v0.7.9

func (erh *EventRateHistory) GetCurrentRate() int

func (*EventRateHistory) GetDisplayedHistory added in v0.7.9

func (erh *EventRateHistory) GetDisplayedHistory() []*EventRate

func (*EventRateHistory) SetFreezeData added in v0.7.9

func (erh *EventRateHistory) SetFreezeData(freezeData bool)

SetFreezeData is called when user pauses/unpauses display

type HistoryRangeType added in v0.7.9

type HistoryRangeType int
const (
	BY_SECOND HistoryRangeType = iota
	BY_MINUTE
	BY_10MINUTE
	BY_HOUR
	BY_DAY
)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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