stats

package
v0.2.1 Latest Latest
Warning

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

Go to latest
Published: Dec 4, 2023 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Index

Constants

View Source
const (
	SortCount           = "Count"
	SortQuery           = "Query"
	SortMaxQueryTime    = "MaxQueryTime"
	SortMinQueryTime    = "MinQueryTime"
	SortAvgQueryTime    = "AvgQueryTime"
	SortSumQueryTime    = "SumQueryTime"
	SortPNQueryTime     = "PNQueryTime"
	SortMaxLockTime     = "MaxLockTime"
	SortMinLockTime     = "MinLockTime"
	SortAvgLockTime     = "AvgLockTime"
	SortSumLockTime     = "SumLockTime"
	SortPNLockTime      = "PNLockTime"
	SortMaxRowsSent     = "MaxRowsSent"
	SortMinRowsSent     = "MinRowsSent"
	SortAvgRowsSent     = "AvgRowsSent"
	SortSumRowsSent     = "SumRowsSent"
	SortPNRowsSent      = "PNRowsSent"
	SortMaxRowsExamined = "MaxRowsExamined"
	SortMinRowsExamined = "MinRowsExamined"
	SortAvgRowsExamined = "AvgRowsExamined"
	SortSumRowsExamined = "SumRowsExamined"
	SortPNRowsExamined  = "PNRowsExamined"
	SortMaxRowsAffected = "MaxRowsAffected"
	SortMinRowsAffected = "MinRowsAffected"
	SortAvgRowsAffected = "AvgRowsAffected"
	SortSumRowsAffected = "SumRowsAffected"
	SortPNRowsAffected  = "PNRowsAffected"
	SortMaxBytesSent    = "MaxBytesSent"
	SortMinBytesSent    = "MinBytesSent"
	SortAvgBytesSent    = "AvgBytesSent"
	SortSumBytesSent    = "SumBytesSent"
	SortPNBytesSent     = "PNBytesSent"
)

Variables

This section is empty.

Functions

func DiffCountAll

func DiffCountAll(from, to map[string]int) map[string]string

func MySQLOutputKeywords added in v0.2.0

func MySQLOutputKeywords(percentiles []int) []string

func OutputKeywords

func OutputKeywords(_outputKeywords []string, percentiles []int) []string

func PGOutputKeywords added in v0.2.0

func PGOutputKeywords(percentiles []int) []string

Types

type Differ

type Differ struct {
	From *QueryStat
	To   *QueryStat
}

func NewDiffer

func NewDiffer(from, to *QueryStat) *Differ

func (*Differ) DiffAvgBytesSent

func (d *Differ) DiffAvgBytesSent() string

func (*Differ) DiffAvgLockTime

func (d *Differ) DiffAvgLockTime() string

func (*Differ) DiffAvgQueryTime

func (d *Differ) DiffAvgQueryTime() string

func (*Differ) DiffAvgRowsAffected

func (d *Differ) DiffAvgRowsAffected() string

func (*Differ) DiffAvgRowsExamined

func (d *Differ) DiffAvgRowsExamined() string

func (*Differ) DiffAvgRowsSent

func (d *Differ) DiffAvgRowsSent() string

func (*Differ) DiffCnt

func (d *Differ) DiffCnt() string

func (*Differ) DiffMaxBytesSent

func (d *Differ) DiffMaxBytesSent() string

bytes sent

func (*Differ) DiffMaxLockTime

func (d *Differ) DiffMaxLockTime() string

lock time

func (*Differ) DiffMaxQueryTime

func (d *Differ) DiffMaxQueryTime() string

query time

func (*Differ) DiffMaxRowsAffected

func (d *Differ) DiffMaxRowsAffected() string

rows affected

func (*Differ) DiffMaxRowsExamined

func (d *Differ) DiffMaxRowsExamined() string

rows examined

func (*Differ) DiffMaxRowsSent

func (d *Differ) DiffMaxRowsSent() string

rows sent

func (*Differ) DiffMinBytesSent

func (d *Differ) DiffMinBytesSent() string

func (*Differ) DiffMinLockTime

func (d *Differ) DiffMinLockTime() string

func (*Differ) DiffMinQueryTime

func (d *Differ) DiffMinQueryTime() string

func (*Differ) DiffMinRowsAffected

func (d *Differ) DiffMinRowsAffected() string

func (*Differ) DiffMinRowsExamined

func (d *Differ) DiffMinRowsExamined() string

func (*Differ) DiffMinRowsSent

func (d *Differ) DiffMinRowsSent() string

func (*Differ) DiffPNBytesSent

func (d *Differ) DiffPNBytesSent(n int) string

func (*Differ) DiffPNLockTime

func (d *Differ) DiffPNLockTime(n int) string

func (*Differ) DiffPNQueryTime

func (d *Differ) DiffPNQueryTime(n int) string

func (*Differ) DiffPNRowsAffected

func (d *Differ) DiffPNRowsAffected(n int) string

func (*Differ) DiffPNRowsExamined

func (d *Differ) DiffPNRowsExamined(n int) string

func (*Differ) DiffPNRowsSent

func (d *Differ) DiffPNRowsSent(n int) string

func (*Differ) DiffSumBytesSent

func (d *Differ) DiffSumBytesSent() string

func (*Differ) DiffSumLockTime

func (d *Differ) DiffSumLockTime() string

func (*Differ) DiffSumQueryTime

func (d *Differ) DiffSumQueryTime() string

func (*Differ) DiffSumRowsAffected

func (d *Differ) DiffSumRowsAffected() string

func (*Differ) DiffSumRowsExamined

func (d *Differ) DiffSumRowsExamined() string

func (*Differ) DiffSumRowsSent

func (d *Differ) DiffSumRowsSent() string

type ExpEval

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

func NewExpEval

func NewExpEval(input string) (*ExpEval, error)

func (*ExpEval) Run

func (ee *ExpEval) Run(metrics *QueryMetrics) (bool, error)

type ExpEvalEnv

type ExpEvalEnv struct {
	Query        string
	QueryTime    float64
	LockTime     float64
	RowsSent     uint64
	RowsExamined uint64
	RowsAffected uint64
	BytesSent    uint64
}

type Filter

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

func NewFilter

func NewFilter(options *options.Options) *Filter

func (*Filter) Do

func (f *Filter) Do(metrics *QueryMetrics) error

func (*Filter) Init

func (f *Filter) Init() error

type PrintOptions

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

func NewPrintOptions

func NewPrintOptions(noHeaders, showFooters bool, paginationLimit int) *PrintOptions

type Printer

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

func NewPrinter

func NewPrinter(w io.Writer, val, format string, percentiles []int, printOptions *PrintOptions) *Printer

func (*Printer) GenerateFooter

func (p *Printer) GenerateFooter(counts map[string]int) []string

func (*Printer) GenerateFooterWithDiff

func (p *Printer) GenerateFooterWithDiff(countsFrom, countsTo map[string]int) []string

func (*Printer) GenerateLine

func (p *Printer) GenerateLine(s *QueryStat) []string

func (*Printer) GenerateLineWithDiff

func (p *Printer) GenerateLineWithDiff(from, to *QueryStat) []string

func (*Printer) Print

func (p *Printer) Print(qs, qsTo *QueryStats)

func (*Printer) SetFormat

func (p *Printer) SetFormat(format string)

func (*Printer) SetHeaders

func (p *Printer) SetHeaders(headers []string)

func (*Printer) SetWriter

func (p *Printer) SetWriter(w io.Writer)

func (*Printer) Validate

func (p *Printer) Validate(sortKey string) error

type QueryMetrics added in v0.2.0

type QueryMetrics struct {
	Query        string
	QueryTime    float64
	LockTime     float64
	RowsSent     uint64
	RowsExamined uint64
	RowsAffected uint64
	BytesSent    uint64
}

type QueryStat

type QueryStat struct {
	Query        string       `yaml:"query"`
	Cnt          int          `yaml:"count"`
	QueryTime    *timeStats   `yaml:"query_time"`
	LockTime     *timeStats   `yaml:"lock_time"`
	RowsSent     *numberStats `yaml:"rows_sent"`
	RowsExamined *numberStats `yaml:"rows_examined"`
	RowsAffected *numberStats `yaml:"rows_affected"`
	BytesSent    *numberStats `yaml:"bytes_sent"`
}

func (*QueryStat) AvgBytesSent

func (qs *QueryStat) AvgBytesSent() float64

func (*QueryStat) AvgLockTime

func (qs *QueryStat) AvgLockTime() float64

func (*QueryStat) AvgQueryTime

func (qs *QueryStat) AvgQueryTime() float64

func (*QueryStat) AvgRowsAffected

func (qs *QueryStat) AvgRowsAffected() float64

func (*QueryStat) AvgRowsExamined

func (qs *QueryStat) AvgRowsExamined() float64

func (*QueryStat) AvgRowsSent

func (qs *QueryStat) AvgRowsSent() float64

func (*QueryStat) Count

func (qs *QueryStat) Count() int

func (*QueryStat) MaxBytesSent

func (qs *QueryStat) MaxBytesSent() uint64

bytes_sent"

func (*QueryStat) MaxLockTime

func (qs *QueryStat) MaxLockTime() float64

lock_time

func (*QueryStat) MaxQueryTime

func (qs *QueryStat) MaxQueryTime() float64

query_time

func (*QueryStat) MaxRowsAffected

func (qs *QueryStat) MaxRowsAffected() uint64

rows_affected

func (*QueryStat) MaxRowsExamined

func (qs *QueryStat) MaxRowsExamined() uint64

rows_examined

func (*QueryStat) MaxRowsSent

func (qs *QueryStat) MaxRowsSent() uint64

rows_sent

func (*QueryStat) MinBytesSent

func (qs *QueryStat) MinBytesSent() uint64

func (*QueryStat) MinLockTime

func (qs *QueryStat) MinLockTime() float64

func (*QueryStat) MinQueryTime

func (qs *QueryStat) MinQueryTime() float64

func (*QueryStat) MinRowsAffected

func (qs *QueryStat) MinRowsAffected() uint64

func (*QueryStat) MinRowsExamined

func (qs *QueryStat) MinRowsExamined() uint64

func (*QueryStat) MinRowsSent

func (qs *QueryStat) MinRowsSent() uint64

func (*QueryStat) PNBytesSent

func (qs *QueryStat) PNBytesSent(n int) uint64

func (*QueryStat) PNLockTime

func (qs *QueryStat) PNLockTime(n int) float64

func (*QueryStat) PNQueryTime

func (qs *QueryStat) PNQueryTime(n int) float64

func (*QueryStat) PNRowsAffected

func (qs *QueryStat) PNRowsAffected(n int) uint64

func (*QueryStat) PNRowsExamined

func (qs *QueryStat) PNRowsExamined(n int) uint64

func (*QueryStat) PNRowsSent

func (qs *QueryStat) PNRowsSent(n int) uint64

func (*QueryStat) Set

func (qs *QueryStat) Set(queryTime, lockTime float64, rowsSent, rowsExamined, rowsAffected, bytesSent uint64)

func (*QueryStat) StddevBytesSent

func (qs *QueryStat) StddevBytesSent() float64

func (*QueryStat) StddevLockTime

func (qs *QueryStat) StddevLockTime() float64

func (*QueryStat) StddevQueryTime

func (qs *QueryStat) StddevQueryTime() float64

func (*QueryStat) StddevRowsAffected

func (qs *QueryStat) StddevRowsAffected() float64

func (*QueryStat) StddevRowsExamined

func (qs *QueryStat) StddevRowsExamined() float64

func (*QueryStat) StddevRowsSent

func (qs *QueryStat) StddevRowsSent() float64

func (*QueryStat) StrAvgBytesSent

func (qs *QueryStat) StrAvgBytesSent() string

func (*QueryStat) StrAvgLockTime

func (qs *QueryStat) StrAvgLockTime() string

func (*QueryStat) StrAvgQueryTime

func (qs *QueryStat) StrAvgQueryTime() string

func (*QueryStat) StrAvgRowsAffected

func (qs *QueryStat) StrAvgRowsAffected() string

func (*QueryStat) StrAvgRowsExamined

func (qs *QueryStat) StrAvgRowsExamined() string

func (*QueryStat) StrAvgRowsSent

func (qs *QueryStat) StrAvgRowsSent() string

func (*QueryStat) StrCount

func (qs *QueryStat) StrCount() string

func (*QueryStat) StrMaxBytesSent

func (qs *QueryStat) StrMaxBytesSent() string

func (*QueryStat) StrMaxLockTime

func (qs *QueryStat) StrMaxLockTime() string

func (*QueryStat) StrMaxQueryTime

func (qs *QueryStat) StrMaxQueryTime() string

func (*QueryStat) StrMaxRowsAffected

func (qs *QueryStat) StrMaxRowsAffected() string

func (*QueryStat) StrMaxRowsExamined

func (qs *QueryStat) StrMaxRowsExamined() string

func (*QueryStat) StrMaxRowsSent

func (qs *QueryStat) StrMaxRowsSent() string

func (*QueryStat) StrMinBytesSent

func (qs *QueryStat) StrMinBytesSent() string

func (*QueryStat) StrMinLockTime

func (qs *QueryStat) StrMinLockTime() string

func (*QueryStat) StrMinQueryTime

func (qs *QueryStat) StrMinQueryTime() string

func (*QueryStat) StrMinRowsAffected

func (qs *QueryStat) StrMinRowsAffected() string

func (*QueryStat) StrMinRowsExamined

func (qs *QueryStat) StrMinRowsExamined() string

func (*QueryStat) StrMinRowsSent

func (qs *QueryStat) StrMinRowsSent() string

func (*QueryStat) StrPNBytesSent

func (qs *QueryStat) StrPNBytesSent(n int) string

func (*QueryStat) StrPNLockTime

func (qs *QueryStat) StrPNLockTime(n int) string

func (*QueryStat) StrPNQueryTime

func (qs *QueryStat) StrPNQueryTime(n int) string

func (*QueryStat) StrPNRowsAffected

func (qs *QueryStat) StrPNRowsAffected(n int) string

func (*QueryStat) StrPNRowsExamined

func (qs *QueryStat) StrPNRowsExamined(n int) string

func (*QueryStat) StrPNRowsSent

func (qs *QueryStat) StrPNRowsSent(n int) string

func (*QueryStat) StrStddevBytesSent

func (qs *QueryStat) StrStddevBytesSent() string

func (*QueryStat) StrStddevLockTime

func (qs *QueryStat) StrStddevLockTime() string

func (*QueryStat) StrStddevQueryTime

func (qs *QueryStat) StrStddevQueryTime() string

func (*QueryStat) StrStddevRowsAffected

func (qs *QueryStat) StrStddevRowsAffected() string

func (*QueryStat) StrStddevRowsExamined

func (qs *QueryStat) StrStddevRowsExamined() string

func (*QueryStat) StrStddevRowsSent

func (qs *QueryStat) StrStddevRowsSent() string

func (*QueryStat) StrSumBytesSent

func (qs *QueryStat) StrSumBytesSent() string

func (*QueryStat) StrSumLockTime

func (qs *QueryStat) StrSumLockTime() string

func (*QueryStat) StrSumQueryTime

func (qs *QueryStat) StrSumQueryTime() string

func (*QueryStat) StrSumRowsAffected

func (qs *QueryStat) StrSumRowsAffected() string

func (*QueryStat) StrSumRowsExamined

func (qs *QueryStat) StrSumRowsExamined() string

func (*QueryStat) StrSumRowsSent

func (qs *QueryStat) StrSumRowsSent() string

func (*QueryStat) SumBytesSent

func (qs *QueryStat) SumBytesSent() uint64

func (*QueryStat) SumLockTime

func (qs *QueryStat) SumLockTime() float64

func (*QueryStat) SumQueryTime

func (qs *QueryStat) SumQueryTime() float64

func (*QueryStat) SumRowsAffected

func (qs *QueryStat) SumRowsAffected() uint64

func (*QueryStat) SumRowsExamined

func (qs *QueryStat) SumRowsExamined() uint64

func (*QueryStat) SumRowsSent

func (qs *QueryStat) SumRowsSent() uint64

type QueryStats

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

func NewQueryStats

func NewQueryStats(useQueryTimePercentile, useLockTimePercentile, useRowsSentPercentile, useRowsExaminedPercentile, useRowsAffectedPercentile, useBytesSent bool) *QueryStats

func (*QueryStats) CountAll

func (qs *QueryStats) CountAll() map[string]int

func (*QueryStats) CountUris

func (qs *QueryStats) CountUris() int

func (*QueryStats) DoFilter

func (qs *QueryStats) DoFilter(metrics *QueryMetrics) (bool, error)

func (*QueryStats) DumpStats

func (hs *QueryStats) DumpStats(w io.Writer) error

func (*QueryStats) InitFilter

func (qs *QueryStats) InitFilter(options *options.Options) error

func (*QueryStats) LoadStats

func (hs *QueryStats) LoadStats(r io.Reader) error

func (*QueryStats) Set

func (qs *QueryStats) Set(query string, querytime, lockTime float64, rowsSent, rowsExamined, rowsAffected, bytesSent uint64)

func (*QueryStats) SetOptions

func (qs *QueryStats) SetOptions(options *options.Options)

func (*QueryStats) SetQueryMatchingGroups

func (qs *QueryStats) SetQueryMatchingGroups(groups []string) error

func (*QueryStats) SetSortOptions

func (qs *QueryStats) SetSortOptions(options *SortOptions)

func (*QueryStats) Sort

func (qs *QueryStats) Sort(sortOptions *SortOptions, reverse bool)

func (*QueryStats) SortAvgBytesSent

func (qs *QueryStats) SortAvgBytesSent(reverse bool)

func (*QueryStats) SortAvgLockTime

func (qs *QueryStats) SortAvgLockTime(reverse bool)

func (*QueryStats) SortAvgQueryTime

func (qs *QueryStats) SortAvgQueryTime(reverse bool)

func (*QueryStats) SortAvgRowsAffected

func (qs *QueryStats) SortAvgRowsAffected(reverse bool)

func (*QueryStats) SortAvgRowsExamined

func (qs *QueryStats) SortAvgRowsExamined(reverse bool)

func (*QueryStats) SortAvgRowsSent

func (qs *QueryStats) SortAvgRowsSent(reverse bool)

func (*QueryStats) SortCount

func (qs *QueryStats) SortCount(reverse bool)

func (*QueryStats) SortMaxBytesSent

func (qs *QueryStats) SortMaxBytesSent(reverse bool)

bytes sent

func (*QueryStats) SortMaxLockTime

func (qs *QueryStats) SortMaxLockTime(reverse bool)

lock time

func (*QueryStats) SortMaxQueryTime

func (qs *QueryStats) SortMaxQueryTime(reverse bool)

query time

func (*QueryStats) SortMaxRowsAffected

func (qs *QueryStats) SortMaxRowsAffected(reverse bool)

rows affected

func (*QueryStats) SortMaxRowsExamined

func (qs *QueryStats) SortMaxRowsExamined(reverse bool)

rows examined

func (*QueryStats) SortMaxRowsSent

func (qs *QueryStats) SortMaxRowsSent(reverse bool)

rows sent

func (*QueryStats) SortMinBytesSent

func (qs *QueryStats) SortMinBytesSent(reverse bool)

func (*QueryStats) SortMinLockTime

func (qs *QueryStats) SortMinLockTime(reverse bool)

func (*QueryStats) SortMinQueryTime

func (qs *QueryStats) SortMinQueryTime(reverse bool)

func (*QueryStats) SortMinRowsAffected

func (qs *QueryStats) SortMinRowsAffected(reverse bool)

func (*QueryStats) SortMinRowsExamined

func (qs *QueryStats) SortMinRowsExamined(reverse bool)

func (*QueryStats) SortMinRowsSent

func (qs *QueryStats) SortMinRowsSent(reverse bool)

func (*QueryStats) SortPNBytesSent

func (qs *QueryStats) SortPNBytesSent(reverse bool)

func (*QueryStats) SortPNLockTime

func (qs *QueryStats) SortPNLockTime(reverse bool)

func (*QueryStats) SortPNQueryTime

func (qs *QueryStats) SortPNQueryTime(reverse bool)

func (*QueryStats) SortPNRowsAffected

func (qs *QueryStats) SortPNRowsAffected(reverse bool)

func (*QueryStats) SortPNRowsExamined

func (qs *QueryStats) SortPNRowsExamined(reverse bool)

func (*QueryStats) SortPNRowsSent

func (qs *QueryStats) SortPNRowsSent(reverse bool)

func (*QueryStats) SortQuery

func (qs *QueryStats) SortQuery(reverse bool)

func (*QueryStats) SortSumBytesSent

func (qs *QueryStats) SortSumBytesSent(reverse bool)

func (*QueryStats) SortSumLockTime

func (qs *QueryStats) SortSumLockTime(reverse bool)

func (*QueryStats) SortSumQueryTime

func (qs *QueryStats) SortSumQueryTime(reverse bool)

func (*QueryStats) SortSumRowsAffected

func (qs *QueryStats) SortSumRowsAffected(reverse bool)

func (*QueryStats) SortSumRowsExamined

func (qs *QueryStats) SortSumRowsExamined(reverse bool)

func (*QueryStats) SortSumRowsSent

func (qs *QueryStats) SortSumRowsSent(reverse bool)

func (*QueryStats) SortWithOptions

func (qs *QueryStats) SortWithOptions()

func (*QueryStats) Stats

func (qs *QueryStats) Stats() []*QueryStat

type SortOptions

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

func NewSortOptions

func NewSortOptions() *SortOptions

func (*SortOptions) Percentile

func (so *SortOptions) Percentile() int

func (*SortOptions) SetAndValidate

func (so *SortOptions) SetAndValidate(opt string) error

func (*SortOptions) SortType

func (so *SortOptions) SortType() string

Jump to

Keyboard shortcuts

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