report

package
v1.16.0 Latest Latest
Warning

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

Go to latest
Published: Apr 23, 2024 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

View Source
const AssetDebug = false

AssetDebug is true if the assets were built with the debug flag enabled.

Variables

This section is empty.

Functions

func Asset added in v1.2.0

func Asset(name string) ([]byte, error)

Asset loads and returns the asset for the given name. It returns an error if the asset could not be found or could not be loaded.

func AssetDigest added in v1.2.0

func AssetDigest(name string) ([sha256.Size]byte, error)

AssetDigest returns the digest of the file with the given name. It returns an error if the asset could not be found or the digest could not be loaded.

func AssetDir added in v1.2.0

func AssetDir(name string) ([]string, error)

AssetDir returns the file names below a certain directory embedded in the file by go-bindata. For example if you run go-bindata on data/... and data contains the following hierarchy:

data/
  foo.txt
  img/
    a.png
    b.png

then AssetDir("data") would return []string{"foo.txt", "img"}, AssetDir("data/img") would return []string{"a.png", "b.png"}, AssetDir("foo.txt") and AssetDir("notexist") would return an error, and AssetDir("") will return []string{"data"}.

func AssetInfo added in v1.2.0

func AssetInfo(name string) (os.FileInfo, error)

AssetInfo loads and returns the asset info for the given name. It returns an error if the asset could not be found or could not be loaded.

func AssetNames added in v1.2.0

func AssetNames() []string

AssetNames returns the names of the assets.

func AssetString added in v1.2.0

func AssetString(name string) (string, error)

AssetString returns the asset contents as a string (instead of a []byte).

func Compare

func Compare(target io.Writer, opts CompareOpts, reports ...Report) error

Compare compares the given set of reports. The first report is considered to be the base.

func Digests added in v1.2.0

func Digests() (map[string][sha256.Size]byte, error)

Digests returns a map of all known files and their checksums.

func GenerateDashboard added in v1.2.0

func GenerateDashboard(title string, baseReport, newReport Report, out io.Writer) error

GenerateDashboard generates a comparative Grafana dashboard for the given reports and writes its result to the provided io.Writer.

func MustAsset added in v1.2.0

func MustAsset(name string) []byte

MustAsset is like Asset but panics when Asset would return an error. It simplifies safe initialization of global variables.

func MustAssetString added in v1.2.0

func MustAssetString(name string) string

MustAssetString is like AssetString but panics when Asset would return an error. It simplifies safe initialization of global variables.

func RestoreAsset added in v1.2.0

func RestoreAsset(dir, name string) error

RestoreAsset restores an asset under the given directory.

func RestoreAssets added in v1.2.0

func RestoreAssets(dir, name string) error

RestoreAssets restores an asset under the given directory recursively.

Types

type CompareOpts added in v1.2.0

type CompareOpts struct {
	GenGraph     bool   // A boolean indicating whether to generate plotted graphs.
	GraphsPrefix string // A prefix to prepend to the filename of the generated graphs.
}

CompareOpts holds options to customize a comparison.

type Config

type Config struct {
	Label        string // Label to be used when querying Prometheus.
	GraphQueries []GraphQuery
}

Config contains information needed to generate reports.

type Generator

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

Generator is used to generate load test reports.

func New

func New(label string, helper *prometheus.Helper, cfg Config) *Generator

New returns a new instance of a generator.

func (*Generator) Generate

func (g *Generator) Generate(startTime, endTime time.Time) (Report, error)

Generate returns a report from a given start time to end time.

type GraphQuery

type GraphQuery struct {
	Name  string // A friendly name for the query.
	Query string // The actual Prometheus query to be executed.
}

GraphQuery contains the query to be executed against a Prometheus instance to gather data for reports.

type Report

type Report struct {
	Label         string // A friendly name of the report.
	StartTime     time.Time
	EndTime       time.Time
	AvgStoreTimes map[model.LabelValue]model.SampleValue
	P99StoreTimes map[model.LabelValue]model.SampleValue
	AvgAPITimes   map[model.LabelValue]model.SampleValue
	P99APITimes   map[model.LabelValue]model.SampleValue
	Graphs        []graph
}

Report contains the entire report data comprising of several metrics that are needed to compare load test runs.

func Load

func Load(path string) (Report, error)

Load loads a report from a given file path.

Jump to

Keyboard shortcuts

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