metric

package
v0.6.9 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	Second = int64(time.Second)
)

Functions

func MarkdownTable added in v0.6.9

func MarkdownTable(counts []*Count, options *Options) (content string)

func MarkdownTableByCounts added in v0.6.2

func MarkdownTableByCounts(counts []*Count) (content string)

Types

type Count

type Count struct {
	StartTime    int64   `json:"startTime"` // 纳秒
	EndTime      int64   `json:"endTime"`   // 纳秒
	Count        int     `json:"count"`
	SuccessCount int     `json:"successCount"`
	ErrorCount   int     `json:"errorCount"`
	TotalTime    int64   `json:"totalTime"`   // 执行时长包括额外开销 从 最小 开始时间 到 最大结束时间 的时间差 纳秒
	Total        string  `json:"total"`       // 执行时长包括额外开销 毫秒 保留 2位小数
	ExecuteTime  int64   `json:"executeTime"` // 执行时长包括额外开销 从 最小 开始时间 到 最大结束时间 的时间差 纳秒
	Execute      string  `json:"execute"`     // 执行时长包括额外开销 毫秒 保留 2位小数
	UseTime      int64   `json:"useTime"`     // 总调用时长 使用 所有项 的 耗时 相加
	Use          string  `json:"use"`         // 总调用时长 毫秒 保留 2位小数
	Max          string  `json:"max"`         // 最大时间 毫秒 保留 2位小数
	MaxUseTime   int     `json:"maxTime"`     // 最大时间 纳秒
	Min          string  `json:"min"`         // 最小时间 毫秒 保留 2位小数
	MinUseTime   int     `json:"minTime"`     // 最小时间 纳秒
	Tps          string  `json:"tps"`         // TPS 总次数 / 执行时长 秒 保留 2位小数
	TpsValue     float64 `json:"tpsValue"`    // TPS 总次数 / 执行时长 秒
	Avg          string  `json:"avg"`         // 平均耗时 总调用时长 / 总次数 毫秒 保留 2位小数
	AvgValue     float64 `json:"avgValue"`    // 平均耗时 总调用时长 / 总次数 毫秒
	T50          string  `json:"t50"`         // TOP 50 表示 百分之 50 的调用超过这个时间 毫秒 保留 2位小数
	T60          string  `json:"t60"`         // TOP 60 表示 百分之 60 的调用超过这个时间 毫秒 保留 2位小数
	T70          string  `json:"t70"`         // TOP 70 表示 百分之 70 的调用超过这个时间 毫秒 保留 2位小数
	T80          string  `json:"t80"`         // TOP 80 表示 百分之 80 的调用超过这个时间 毫秒 保留 2位小数
	T90          string  `json:"t90"`         // TOP 90 表示 百分之 90 的调用超过这个时间 毫秒 保留 2位小数
	T99          string  `json:"t99"`         // TOP 99 表示 百分之 99 的调用超过这个时间 毫秒 保留 2位小数
	// contains filtered or unexported fields
}

func CountCounts added in v0.6.6

func CountCounts(countList []*Count, countTop bool) (count *Count)

func CountItems

func CountItems(itemList *[]*Item, countTop bool) (count *Count)

func WorkersCount added in v0.6.9

func WorkersCount(countList []*Count, countTop bool) (count *Count)

type Item

type Item struct {
	StartTime int64       `json:"startTime"`
	EndTime   int64       `json:"endTime"`
	Success   bool        `json:"success"`
	Extend    interface{} `json:"extend"`
	UseTime   int         `json:"useTime"`
	// contains filtered or unexported fields
}

func (*Item) End

func (this_ *Item) End(useTime int, endTime int64, err error)

type ItemList

type ItemList []*Item

func (*ItemList) Len

func (m *ItemList) Len() int

Len 实现sort.Interface接口的获取元素数量方法

func (*ItemList) Less

func (m *ItemList) Less(i, j int) bool

Less 实现sort.Interface接口的比较元素方法

func (*ItemList) Swap

func (m *ItemList) Swap(i, j int)

Swap 实现sort.Interface接口的交换元素方法

type Metric

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

func NewMetric added in v0.6.6

func NewMetric() (res *Metric)

func (*Metric) GetCount added in v0.6.6

func (this_ *Metric) GetCount() (count *Count)

func (*Metric) GetSecondCounts added in v0.6.6

func (this_ *Metric) GetSecondCounts() (counts []*Count)

func (*Metric) GewWorkerMetrics added in v0.6.9

func (this_ *Metric) GewWorkerMetrics() (workerMetrics []*WorkerMetric)

func (*Metric) NewWorkerMetric added in v0.6.9

func (this_ *Metric) NewWorkerMetric(workerIndex int) (workerMetric *WorkerMetric)

func (*Metric) SetCountSecond added in v0.6.8

func (this_ *Metric) SetCountSecond(countSecond int) *Metric

SetCountSecond 统计间隔秒 如 每秒统计 输入 1 默认 10 秒统计

func (*Metric) SetCountTop added in v0.6.9

func (this_ *Metric) SetCountTop(countTop bool) *Metric

SetCountTop 是否统计 T99 T90 T80等,高并发下 消耗内存将增加

func (*Metric) SetOnCount added in v0.6.9

func (this_ *Metric) SetOnCount(onCount func()) *Metric

SetOnCount 每次统计完成 调用该方法

func (*Metric) StartCount added in v0.6.6

func (this_ *Metric) StartCount()

func (*Metric) StopCount added in v0.6.6

func (this_ *Metric) StopCount()

type Options added in v0.6.9

type Options struct {
	AddHtmlFormat bool
}

type SecondItem added in v0.6.9

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

type WorkerMetric added in v0.6.9

type WorkerMetric struct {
	WorkerIndex int `json:"workerIndex"` // 工作线程索引  用于并发线程下 每个线程的时间跨度计算
	// contains filtered or unexported fields
}

WorkerMetric 单线程 统计

func (*WorkerMetric) NewItem added in v0.6.9

func (this_ *WorkerMetric) NewItem(startTime int64) (item *Item)

Jump to

Keyboard shortcuts

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