@@ -26,63 +26,77 @@ var (
2626)
2727
2828func init () {
29- scheme := runtime .NewScheme ()
29+ var (
30+ scheme = runtime .NewScheme ()
31+ mgrClientErr error
32+ )
33+
3034 utilruntime .Must (clientgoscheme .AddToScheme (scheme ))
3135
3236 config = common .NewConfig ()
3337
34- var mgrClientErr error
3538 mgrClient , mgrClientErr = client .New (ctrl .GetConfigOrDie (), client.Options {Scheme : scheme })
3639 if mgrClientErr != nil {
3740 panic (mgrClientErr )
3841 }
3942}
4043
4144func main () {
42- benchmark := NewBenchmark (mgrClient , config , 10000 ).
43- Delay (0 )
44-
45+ itemCount := 1000
46+ benchmark := NewBenchmark (mgrClient , config , itemCount ).Delay (0 )
4547 benchmark .Start ()
4648
47- f , _ := os .Create (benchmarkHtml )
48- _ , writeStringErr := f .WriteString (" <meta http-equiv=\" refresh\" content=\" 6\" />\n Waiting for Mayfly benchmark to start..." )
49+ benchmarkFile , _ := os .Create (benchmarkHtml )
50+
51+ _ , writeStringErr := benchmarkFile .WriteString (" <meta http-equiv=\" refresh\" content=\" 6\" />\n Waiting for Mayfly benchmark to start..." )
4952 if writeStringErr != nil {
5053 panic (writeStringErr )
5154 }
52- openFilErr := browser .OpenFile (f .Name ())
55+
56+ openFilErr := browser .OpenFile (benchmarkFile .Name ())
5357 if openFilErr != nil {
5458 panic (openFilErr )
5559 }
5660
5761 for {
58- time .Sleep (5 * time .Second )
59- result := benchmark .GetResult ()
60- var durations []string
61- data := map [string ][]opts.LineData {}
62+ var (
63+ waitTimeSecond = 5
64+ result = benchmark .GetResult ()
65+ durations []string
66+ data = map [string ][]opts.LineData {}
67+ )
68+
69+ time .Sleep (time .Duration (waitTimeSecond ) * time .Second )
70+
6271 for _ , point := range result .Points {
6372 durations = append (durations , fmt .Sprintf ("%.0fs" , point .time .Sub (result .StartedAt ).Seconds ()))
73+
6474 for _ , resource := range config .Resources {
6575 data [resource ] = append (data [resource ], opts.LineData {Name : resource , Value : point .kind [resource ]})
6676 }
6777 }
68- Render (CreateChart (durations , data ))
6978
79+ Render (CreateChart (durations , data ))
7080 }
7181}
7282
7383func Render (chart * charts.Line ) {
74- f , _ := os .Create (benchmarkHtml )
75- _ , writeStringErr := f .WriteString (" <meta http-equiv=\" refresh\" content=\" 6\" />" )
84+ benchFile , _ := os .Create (benchmarkHtml )
85+
86+ _ , writeStringErr := benchFile .WriteString (" <meta http-equiv=\" refresh\" content=\" 6\" />" )
7687 if writeStringErr != nil {
7788 panic (writeStringErr )
7889 }
79- renderErr := chart .Render (f )
90+
91+ renderErr := chart .Render (benchFile )
8092 if renderErr != nil {
8193 panic (renderErr )
8294 }
8395}
8496
8597func CreateChart (xAxis []string , yzAxis map [string ][]opts.LineData ) * charts.Line {
98+ var chartAreaOpacity float32 = 0.2
99+
86100 line := charts .NewLine ()
87101 line .SetGlobalOptions (charts .WithTitleOpts (opts.Title {
88102 Title : pageTitle ,
@@ -94,11 +108,13 @@ func CreateChart(xAxis []string, yzAxis map[string][]opts.LineData) *charts.Line
94108 Height : "800px" ,
95109 Theme : "infographic" ,
96110 }))
111+
97112 line .SetXAxis (xAxis )
113+
98114 for kind , value := range yzAxis {
99115 line .AddSeries (kind , value ).SetSeriesOptions (
100116 charts .WithAreaStyleOpts (opts.AreaStyle {
101- Opacity : 0.2 ,
117+ Opacity : opts . Float ( chartAreaOpacity ) ,
102118 }),
103119 charts .WithLineChartOpts (opts.LineChart {
104120 Smooth : opts .Bool (false ),
@@ -107,5 +123,6 @@ func CreateChart(xAxis []string, yzAxis map[string][]opts.LineData) *charts.Line
107123 opts.MarkPointStyle {Label : & opts.Label {Show : opts .Bool (true )}}),
108124 )
109125 }
126+
110127 return line
111128}
0 commit comments