Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AggregatedDiscoveryMetrics ¶
type AggregatedDiscoveryMetrics struct { FirstSeen time.Time // timestamp of the first data seen LastSeen time.Time // timestamp of the last data seen CountDistinctInstanceKeys int // number of distinct Instances seen (note: this may not be true: distinct = succeeded + failed) CountDistinctOkInstanceKeys int // number of distinct Instances which succeeded CountDistinctFailedInstanceKeys int // number of distinct Instances which failed FailedDiscoveries uint64 // number of failed discoveries SuccessfulDiscoveries uint64 // number of successful discoveries InstancePollSecondsExceeded uint64 // number of times discoverInstance exceeded InstancePollSeconds MeanTotalSeconds float64 MeanBackendSeconds float64 MeanInstanceSeconds float64 FailedMeanTotalSeconds float64 FailedMeanBackendSeconds float64 FailedMeanInstanceSeconds float64 MaxTotalSeconds float64 MaxBackendSeconds float64 MaxInstanceSeconds float64 FailedMaxTotalSeconds float64 FailedMaxBackendSeconds float64 FailedMaxInstanceSeconds float64 MedianTotalSeconds float64 MedianBackendSeconds float64 MedianInstanceSeconds float64 FailedMedianTotalSeconds float64 FailedMedianBackendSeconds float64 FailedMedianInstanceSeconds float64 P95TotalSeconds float64 P95BackendSeconds float64 P95InstanceSeconds float64 FailedP95TotalSeconds float64 FailedP95BackendSeconds float64 FailedP95InstanceSeconds float64 }
AggregatedDiscoveryMetrics contains aggregated metrics for instance discovery. Called from api/discovery-metrics-aggregated?seconds=xxx
func AggregatedSince ¶
func AggregatedSince(c *collection.Collection, t time.Time) (AggregatedDiscoveryMetrics, error)
AggregatedSince returns a large number of aggregated metrics based on the raw metrics collected since the given time.
type AggregatedQueueMetrics ¶
type AggregatedQueueMetrics struct { ActiveMinEntries float64 ActiveMeanEntries float64 ActiveMedianEntries float64 ActiveP95Entries float64 ActiveMaxEntries float64 QueuedMinEntries float64 QueuedMeanEntries float64 QueuedMedianEntries float64 QueuedP95Entries float64 QueuedMaxEntries float64 }
AggregatedQueueMetrics contains aggregate information some part queue metrics
type Metric ¶
type Metric struct { Timestamp time.Time // time the collection was taken TabletAlias string // instance being monitored BackendLatency time.Duration // time taken talking to the backend InstanceLatency time.Duration // time taken talking to the instance TotalLatency time.Duration // total time taken doing the discovery Err error // error (if applicable) doing the discovery process InstancePollSecondsDurationCount uint64 // total numbers of times discoverInstance exceeded InstancePollSeconds }
Metric holds a set of information of instance discovery metrics
type Queue ¶
Queue contains information for managing discovery requests
func CreateOrReturnQueue ¶
CreateOrReturnQueue allows for creation of a new discovery queue or returning a pointer to an existing one given the name.
func (*Queue) AggregatedDiscoveryQueueMetrics ¶
func (q *Queue) AggregatedDiscoveryQueueMetrics(period int) *AggregatedQueueMetrics
AggregatedDiscoveryQueueMetrics Returns some aggregate statistics based on the period (last N entries) requested. We store up to config.Config.DiscoveryQueueMaxStatisticsSize values and collect once a second so we expect period to be a smaller value.
func (*Queue) Consume ¶
Consume fetches a key to process; blocks if queue is empty. Release must be called once after Consume.
func (*Queue) DiscoveryQueueMetrics ¶
func (q *Queue) DiscoveryQueueMetrics(period int) []QueueMetric
DiscoveryQueueMetrics returns some raw queue metrics based on the period (last N entries) requested.
func (*Queue) Push ¶
Push enqueues a key if it is not on a queue and is not being processed; silently returns otherwise.
type QueueMetric ¶
QueueMetric contains the queue's active and queued sizes