mako

package
v0.0.0-...-74c4be5 Latest Latest
Warning

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

Go to latest
Published: Jun 12, 2023 License: Apache-2.0 Imports: 21 Imported by: 0

README

Mako

Mako is an open source project for performance testing in Knative. It offers capacities like data storage, charting, statistical aggregation and automated regression analysis.

This folder contains common code that can be used by all Knative projects, with which we can follow the same process to set up Mako and collaborate.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func EscapeTag

func EscapeTag(tag string) string

EscapeTag replaces characters that Mako doesn't accept with ones it does.

func NewCrossRunConfig

func NewCrossRunConfig(runCount int32, tags ...string) *tpb.CrossRunConfig

NewCrossRunConfig returns a config that can be used in ThresholdAnalyzer. By using it, the Analyzer will only fail if there are xx continuous runs that cross the threshold.

func XTime

func XTime(t time.Time) float64

XTime converts a time.Time into a Mako x-axis compatible timestamp.

Types

type Client

type Client struct {
	Quickstore   *quickstore.Quickstore
	Context      context.Context
	ShutDownFunc func(context.Context)
	// contains filtered or unexported fields
}

Client is a wrapper that wraps all Mako related operations

func Setup

func Setup(ctx context.Context, extraTags ...string) (*Client, error)

func SetupHelper

func SetupHelper(ctx context.Context, benchmarkKey *string, benchmarkName *string, extraTags ...string) (*Client, error)

SetupHelper sets up the mako client for the provided benchmarkKey. It will add a few common tags and allow each benchmark to add custom tags as well. It returns the mako client handle to store metrics, a method to close the connection to mako server once done and error in case of failures.

func (*Client) StoreAndHandleResult

func (c *Client) StoreAndHandleResult() error

StoreAndHandleResult stores the benchmarking data and handles the result.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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