@@ -56,6 +56,16 @@ const props = defineProps({
5656 procThread: Array ,
5757});
5858
59+ function getTimeStr (timestamp ) {
60+ const now = new Date (timestamp);
61+ const hour = now .getHours ().toString ().padStart (2 , ' 0' );
62+ const minute = now .getMinutes ().toString ().padStart (2 , ' 0' );
63+ const second = now .getSeconds ().toString ().padStart (2 , ' 0' );
64+ return ` ${ hour} :${ minute} :${ second} ` ;
65+ }
66+
67+ let signZoomStart = 30 ;
68+ let signZoomEnd = 100 ;
5969const printSingleCpu = () => {
6070 let chart = echarts .getInstanceByDom (
6171 document .getElementById (
@@ -107,14 +117,18 @@ const printSingleCpu = () => {
107117 {
108118 show: true ,
109119 realtime: true ,
110- start: 30 ,
111- end: 100 ,
120+ start: signZoomStart ,
121+ end: signZoomEnd ,
112122 xAxisIndex: [0 , 1 ],
113123 },
114124 ],
115125 yAxis: [{name: ` ${ $t (' perf.singleCpu' )} (%)` , min: 0 }],
116126 series: sysCpuData .SingleCpuData ,
117127 };
128+ chart .on (' dataZoom' , (event ) => {
129+ signZoomEnd = event .end
130+ signZoomStart = event .start
131+ })
118132 chart .setOption (option);
119133};
120134
@@ -124,10 +138,12 @@ let sysCpuData = {
124138 CpuDataLegend: [],
125139 SingleCpuData: [],
126140 SingleCpuDataLegend: [],
141+ zoomStart: 30 ,
142+ zoomEnd: 100 ,
127143}
128144
129145const pushSysCpuData = (obj ) => {
130- sysCpuData .xAxisData .push (new Date (obj .cpu .timeStamp ))
146+ sysCpuData .xAxisData .push (getTimeStr (obj .cpu .timeStamp ))
131147 if (obj .cpu ) {
132148 for (const i in obj .cpu ) {
133149 if (i !== ' timeStamp' ) {
@@ -217,14 +233,18 @@ const printCpu = () => {
217233 {
218234 show: true ,
219235 realtime: true ,
220- start: 30 ,
221- end: 100 ,
236+ start: sysCpuData . zoomStart ,
237+ end: sysCpuData . zoomEnd ,
222238 xAxisIndex: [0 , 1 ],
223239 },
224240 ],
225241 yAxis: [{name: ` ${ $t (' perf.totalCpu' )} (%)` , min: 0 }],
226242 series: sysCpuData .seriesData ,
227243 };
244+ chart .on (' dataZoom' , (event ) => {
245+ sysCpuData .zoomEnd = event .end
246+ sysCpuData .zoomStart = event .start
247+ })
228248 chart .setOption (option);
229249};
230250
@@ -236,10 +256,12 @@ let sysMemData = {
236256 memTotal: [],
237257 swapFree: [],
238258 swapTotal: [],
259+ zoomStart: 30 ,
260+ zoomEnd: 100 ,
239261}
240262
241263const pushSysMemData = (obj ) => {
242- sysMemData .xAxisData .push (new Date (obj .timeStamp ))
264+ sysMemData .xAxisData .push (getTimeStr (obj .timeStamp ))
243265 sysMemData .memBuffersData .push (obj .memBuffers )
244266 sysMemData .memCached .push (obj .memCached )
245267 sysMemData .memCached .push (obj .memFree )
@@ -273,6 +295,12 @@ const printMem = () => {
273295 },
274296 tooltip: {
275297 trigger: ' axis' ,
298+ position (pos , params , dom , rect , size ) {
299+ const obj = {top: 60 };
300+ obj[[' left' , ' right' ][+ (pos[0 ] < size .viewSize [0 ] / 2 )]] = 5 ;
301+ return obj;
302+ },
303+ valueFormatter : (value ) => ` ${ value} ` ,
276304 },
277305 grid: {top: ' 30%' , left: ' 20%' },
278306 toolbox: {
@@ -300,8 +328,8 @@ const printMem = () => {
300328 {
301329 show: true ,
302330 realtime: true ,
303- start: 30 ,
304- end: 100 ,
331+ start: sysMemData . zoomStart ,
332+ end: sysMemData . zoomEnd ,
305333 xAxisIndex: [0 , 1 ],
306334 },
307335 ],
@@ -351,15 +379,21 @@ const printMem = () => {
351379 },
352380 ],
353381 };
382+ chart .on (' dataZoom' , (event ) => {
383+ sysMemData .zoomEnd = event .end
384+ sysMemData .zoomStart = event .start
385+ })
354386 chart .setOption (option);
355387};
356388
357389let procFPSData = {
358390 xAxisData: [],
359- seriesData: []
391+ seriesData: [],
392+ zoomStart: 30 ,
393+ zoomEnd: 100 ,
360394}
361395const pushProcFPSData = (obj ) => {
362- procFPSData .xAxisData .push (new Date (obj .timeStamp ))
396+ procFPSData .xAxisData .push (getTimeStr (obj .timeStamp ))
363397 procFPSData .seriesData .push (obj .fps )
364398}
365399const printProcFps = () => {
@@ -402,8 +436,8 @@ const printProcFps = () => {
402436 {
403437 show: true ,
404438 realtime: true ,
405- start: 30 ,
406- end: 100 ,
439+ start: procFPSData . zoomStart ,
440+ end: procFPSData . zoomEnd ,
407441 xAxisIndex: [0 , 1 ],
408442 },
409443 ],
@@ -416,18 +450,26 @@ const printProcFps = () => {
416450 },
417451 ],
418452 };
453+ chart .on (' dataZoom' , (event ) => {
454+ procFPSData .zoomEnd = event .end
455+ procFPSData .zoomStart = event .start
456+ })
419457 chart .setOption (option);
420458};
421459
422460let procThreadData = {
423461 xAxisData: [],
424- seriesData: []
462+ seriesData: [],
463+ zoomStart: 30 ,
464+ zoomEnd: 100 ,
425465}
426466const pushProcThreadData = (obj ) => {
427467 console .log (obj)
428- procThreadData .xAxisData .push (new Date (obj .timestamp ))
468+ procThreadData .xAxisData .push (getTimeStr (obj .timeStamp ))
429469 procThreadData .seriesData .push (obj .threadCount )
430470}
471+
472+
431473const printProcThread = () => {
432474 let chart = echarts .getInstanceByDom (
433475 document .getElementById (
@@ -468,8 +510,8 @@ const printProcThread = () => {
468510 {
469511 show: true ,
470512 realtime: true ,
471- start: 30 ,
472- end: 100 ,
513+ start: procThreadData . zoomStart ,
514+ end: procThreadData . zoomEnd ,
473515 xAxisIndex: [0 , 1 ],
474516 },
475517 ],
@@ -482,20 +524,26 @@ const printProcThread = () => {
482524 },
483525 ],
484526 };
527+ chart .on (' dataZoom' , (event ) => {
528+ procThreadData .zoomEnd = event .end
529+ procThreadData .zoomStart = event .start
530+ })
485531 chart .setOption (option);
486532};
487533
488534let sysNetworkData = {
489535 xAxisData: [],
490536 seriesData: [],
491- legendData: []
537+ legendData: [],
538+ zoomStart: 30 ,
539+ zoomEnd: 100 ,
492540}
493541
494542const pushSysNetworkData = (obj ) => {
495543 let isAddTime = true ;
496544 for (const i in obj) {
497545 if (isAddTime) {
498- sysNetworkData .xAxisData .push (new Date (obj[i].timeStamp ));
546+ sysNetworkData .xAxisData .push (getTimeStr (obj[i].timeStamp ));
499547 isAddTime = false ;
500548 }
501549
@@ -552,6 +600,16 @@ const printNetwork = () => {
552600 },
553601 tooltip: {
554602 trigger: ' axis' ,
603+ position (pos , params , dom , rect , size ) {
604+ const obj = {top: 60 };
605+ obj[[' left' , ' right' ][+ (pos[0 ] < size .viewSize [0 ] / 2 )]] = 5 ;
606+ return obj;
607+ },
608+ valueFormatter : (value ) => ` ${ value} ` ,
609+ },
610+ legend: {
611+ top: ' 8%' ,
612+ data: sysNetworkData .legendData ,
555613 },
556614 grid: {top: ' 20%' , left: ' 18%' },
557615 toolbox: {
@@ -566,23 +624,29 @@ const printNetwork = () => {
566624 {
567625 show: true ,
568626 realtime: true ,
569- start: 30 ,
570- end: 100 ,
627+ start: sysNetworkData . zoomStart ,
628+ end: sysNetworkData . zoomEnd ,
571629 xAxisIndex: [0 , 1 ],
572630 },
573631 ],
574632 yAxis: [{name: ` ${ $t (' perf.network' )} (b)` , min: 0 }],
575633 series: sysNetworkData .seriesData ,
576634 };
635+ chart .on (' dataZoom' , (event ) => {
636+ sysNetworkData .zoomEnd = event .end
637+ sysNetworkData .zoomStart = event .start
638+ })
577639 chart .setOption (option);
578640};
579641
580642let procCpuData = {
581643 xAxisData: [],
582- seriesData: []
644+ seriesData: [],
645+ zoomStart: 30 ,
646+ zoomEnd: 100 ,
583647}
584648const pushProcCpuData = (obj ) => {
585- procCpuData .xAxisData .push (new Date (obj .timeStamp ))
649+ procCpuData .xAxisData .push (getTimeStr (obj .timeStamp ))
586650 procCpuData .seriesData .push (obj .cpuUtilization )
587651}
588652const printPerfCpu = () => {
@@ -627,8 +691,8 @@ const printPerfCpu = () => {
627691 {
628692 show: true ,
629693 realtime: true ,
630- start: 30 ,
631- end: 100 ,
694+ start: procCpuData . zoomStart ,
695+ end: procCpuData . zoomEnd ,
632696 xAxisIndex: [0 , 1 ],
633697 },
634698 ],
@@ -643,17 +707,23 @@ const printPerfCpu = () => {
643707 },
644708 ],
645709 };
710+ chart .on (' dataZoom' , (event ) => {
711+ procCpuData .zoomEnd = event .end
712+ procCpuData .zoomStart = event .start
713+ })
646714 chart .setOption (option);
647715};
648716
649717let procMemData = {
650718 xAxisData: [],
651719 pssData: [],
652720 phyData: [],
653- vmData: []
721+ vmData: [],
722+ zoomStart: 30 ,
723+ zoomEnd: 100
654724}
655725const pushProcMemData = (obj ) => {
656- procMemData .xAxisData .push (new Date (obj .timeStamp ))
726+ procMemData .xAxisData .push (getTimeStr (obj .timeStamp ))
657727 procMemData .phyData .push (obj .phyRSS )
658728 procMemData .vmData .push (obj .vmRSS )
659729 procMemData .pssData .push (obj .totalPSS )
@@ -700,8 +770,8 @@ const printPerfMem = () => {
700770 {
701771 show: true ,
702772 realtime: true ,
703- start: 30 ,
704- end: 100 ,
773+ start: procMemData . zoomStart ,
774+ end: procMemData . zoomEnd ,
705775 xAxisIndex: [0 , 1 ],
706776 },
707777 ],
@@ -734,6 +804,10 @@ const printPerfMem = () => {
734804 },
735805 ],
736806 };
807+ chart .on (' dataZoom' , (event ) => {
808+ procMemData .zoomEnd = event .end
809+ procMemData .zoomStart = event .start
810+ })
737811 chart .setOption (option);
738812};
739813
0 commit comments