Documentation
¶
Overview ¶
Package compare 实现 pulse 测试结果对比功能
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Assessment ¶
type Assessment struct {
Stability string `json:"stability"`
SimilarityOverall string `json:"similarity_overall"`
Summary string `json:"summary"`
}
Assessment 表示评估结论
func CalculateAssessment ¶
func CalculateAssessment(baseMetrics, candMetrics Metrics, similarity Similarity) Assessment
CalculateAssessment 计算评估结论
type CompareResult ¶
type CompareResult struct {
Schema string `json:"schema"`
BaselineFile string `json:"baseline_file"`
CandidateFile string `json:"candidate_file"`
Session SessionMetrics `json:"session"`
TimeSeriesSimilarity TimeSeriesSimilarity `json:"time_series_similarity"`
Assessment Assessment `json:"assessment"`
}
CompareResult 表示比较结果
type DataLine ¶
type DataLine struct {
Delay1Ms float64
Loss1Pct float64
BW1Mbps float64
Delay2Ms float64
Loss2Pct float64
BW2Mbps float64
}
DataLine 表示 report.txt 中的一行数据
type MetricDelta ¶
type MetricDelta struct {
Baseline float64 `json:"baseline"`
Candidate float64 `json:"candidate"`
DeltaAbs float64 `json:"delta_abs"`
}
MetricDelta 表示指标变化
type Metrics ¶
type Metrics struct {
UL struct {
DelayAvgMs float64
LossAvgPct float64
GoodputAvgMbps float64
}
DL struct {
DelayAvgMs float64
LossAvgPct float64
GoodputAvgMbps float64
}
}
Metrics 表示计算的指标
type Report ¶
type Report struct {
TestName string
DurationSec float64
StartTime string
EndTime string
IntervalSec float64
PacketSize int
Contents string
Data []DataLine
}
Report 表示解析后的 report.txt 文件
type SessionMetrics ¶
type SessionMetrics struct {
UL struct {
DelayAvgMs MetricDelta `json:"delay_avg_ms"`
LossAvgPct MetricDelta `json:"loss_avg_pct"`
GoodputAvgMbps MetricDelta `json:"goodput_avg_mbps"`
} `json:"ul"`
DL struct {
DelayAvgMs MetricDelta `json:"delay_avg_ms"`
LossAvgPct MetricDelta `json:"loss_avg_pct"`
GoodputAvgMbps MetricDelta `json:"goodput_avg_mbps"`
} `json:"dl"`
}
SessionMetrics 表示会话指标
type Similarity ¶
type Similarity struct {
UL struct {
Delay struct {
Pearson float64
RMSEPct float64
Level string
}
Loss struct {
Pearson float64
RMSEPct float64
Level string
}
Goodput struct {
Pearson float64
RMSEPct float64
Level string
}
}
DL struct {
Delay struct {
Pearson float64
RMSEPct float64
Level string
}
Loss struct {
Pearson float64
RMSEPct float64
Level string
}
Goodput struct {
Pearson float64
RMSEPct float64
Level string
}
}
Overall string
}
Similarity 表示时间序列相似度
func CalculateSimilarity ¶
func CalculateSimilarity(base, cand *Report) Similarity
CalculateSimilarity 计算时间序列相似度
type SimilarityMetric ¶
type SimilarityMetric struct {
Pearson float64 `json:"pearson"`
RMSEPct float64 `json:"rmse_pct"`
Level string `json:"level"`
}
SimilarityMetric 表示相似度指标
type TimeSeriesSimilarity ¶
type TimeSeriesSimilarity struct {
UL struct {
Delay SimilarityMetric `json:"delay"`
Loss SimilarityMetric `json:"loss"`
Goodput SimilarityMetric `json:"goodput"`
} `json:"ul"`
DL struct {
Delay SimilarityMetric `json:"delay"`
Loss SimilarityMetric `json:"loss"`
Goodput SimilarityMetric `json:"goodput"`
} `json:"dl"`
}
TimeSeriesSimilarity 表示时间序列相似度
Source Files
¶
- compare.go
Click to show internal directories.
Click to hide internal directories.