aws

package module
v0.24.0 Latest Latest
Warning

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

Go to latest
Published: Apr 6, 2021 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CalculateFunc

type CalculateFunc func(prev *MetricValue, val interface{}, timestamp time.Time) (interface{}, bool)

CalculateFunc defines how to process metric values by the calculator. It passes previously received MetricValue, and the current raw value and timestamp as parameters. Returns true if the calculation is executed successfully.

type Key

type Key struct {
	MetricMetadata interface{}
	MetricLabels   attribute.Distinct
}

func NewKey

func NewKey(metricMetadata interface{}, labels map[string]string) Key

type MapWithExpiry

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

MapWithExpiry act like a map which provide a method to clean up expired entries

func NewMapWithExpiry

func NewMapWithExpiry(ttl time.Duration) *MapWithExpiry

func (*MapWithExpiry) CleanUp

func (m *MapWithExpiry) CleanUp(now time.Time)

func (*MapWithExpiry) Get

func (m *MapWithExpiry) Get(key Key) (*MetricValue, bool)

func (*MapWithExpiry) Lock

func (m *MapWithExpiry) Lock()

func (*MapWithExpiry) Set

func (m *MapWithExpiry) Set(key Key, value MetricValue)

func (*MapWithExpiry) Size

func (m *MapWithExpiry) Size() int

func (*MapWithExpiry) Unlock

func (m *MapWithExpiry) Unlock()

type MetricCalculator

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

MetricCalculator is a calculator used to adjust metric values based on its previous record.

func NewFloat64DeltaCalculator

func NewFloat64DeltaCalculator() MetricCalculator

func NewMetricCalculator

func NewMetricCalculator(calculateFunc CalculateFunc) MetricCalculator

func (*MetricCalculator) Calculate

func (rm *MetricCalculator) Calculate(metricName string, labels map[string]string, value interface{}, timestamp time.Time) (interface{}, bool)

Calculate accepts a new metric value identified by matricName and labels, and delegates the calculation with value and timestamp back to CalculateFunc for the result. Returns true if the calculation is executed successfully.

type MetricValue

type MetricValue struct {
	RawValue  interface{}
	Timestamp time.Time
}

Directories

Path Synopsis
awsutil module
cwlogs module
ecsutil module
k8s module
metrics module
proxy module
xray module

Jump to

Keyboard shortcuts

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