Skip to content

Commit 8c295e3

Browse files
committed
mgr/dashboard: Add more decimals in latency graph
Fixes: https://tracker.ceph.com/issues/61930 Signed-off-by: Pedro Gonzalez Gomez <[email protected]>
1 parent de05159 commit 8c295e3

File tree

3 files changed

+34
-12
lines changed

3 files changed

+34
-12
lines changed

src/pybind/mgr/dashboard/frontend/src/app/ceph/dashboard-v3/dashboard-area-chart/dashboard-area-chart.component.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@ export class DashboardAreaChartComponent implements OnChanges, AfterViewInit {
3030
label: string;
3131
@Input()
3232
label2?: string;
33+
@Input()
34+
decimals?: number = 1;
3335

3436
currentDataUnits: string;
3537
currentData: number;
@@ -210,7 +212,8 @@ export class DashboardAreaChartComponent implements OnChanges, AfterViewInit {
210212
dataWithUnits = this.numberFormatter.formatSecondsFromTo(
211213
data,
212214
this.dataUnits,
213-
this.chartDataUnits
215+
this.chartDataUnits,
216+
this.decimals
214217
);
215218
} else {
216219
dataWithUnits = this.numberFormatter.formatUnitlessFromTo(
@@ -230,7 +233,7 @@ export class DashboardAreaChartComponent implements OnChanges, AfterViewInit {
230233
} else if (this.dataUnits === 'B/s') {
231234
dataWithUnits = this.dimlessBinaryPerSecond.transform(data);
232235
} else if (this.dataUnits === 'ms') {
233-
dataWithUnits = this.formatter.format_number(data, 1000, ['ms', 's']);
236+
dataWithUnits = this.formatter.format_number(data, 1000, ['ms', 's'], this.decimals);
234237
} else {
235238
dataWithUnits = this.dimlessPipe.transform(data);
236239
}

src/pybind/mgr/dashboard/frontend/src/app/ceph/dashboard-v3/dashboard/dashboard-v3.component.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,7 @@
223223
</cd-dashboard-area-chart>
224224
<cd-dashboard-area-chart chartTitle="Latency"
225225
dataUnits="ms"
226+
decimals="3"
226227
label="Read"
227228
label2="Write"
228229
[data]="queriesResults.READLATENCY"

src/pybind/mgr/dashboard/frontend/src/app/shared/services/number-formatter.service.ts

Lines changed: 28 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -27,24 +27,42 @@ export class NumberFormatterService {
2727
units: string,
2828
targetedUnits: string,
2929
factor: number,
30-
labels: string[]
30+
labels: string[],
31+
decimals: number = 1
3132
): any {
32-
return this.formatter.formatNumberFromTo(value, units, targetedUnits, factor, labels);
33+
return this.formatter.formatNumberFromTo(value, units, targetedUnits, factor, labels, decimals);
3334
}
3435

35-
formatBytesFromTo(value: any, units: string, targetedUnits: string): any {
36-
return this.formatFromTo(value, units, targetedUnits, 1024, this.bytesLabels);
36+
formatBytesFromTo(value: any, units: string, targetedUnits: string, decimals: number = 1): any {
37+
return this.formatFromTo(value, units, targetedUnits, 1024, this.bytesLabels, decimals);
3738
}
3839

39-
formatBytesPerSecondFromTo(value: any, units: string, targetedUnits: string): any {
40-
return this.formatFromTo(value, units, targetedUnits, 1024, this.bytesPerSecondLabels);
40+
formatBytesPerSecondFromTo(
41+
value: any,
42+
units: string,
43+
targetedUnits: string,
44+
decimals: number = 1
45+
): any {
46+
return this.formatFromTo(
47+
value,
48+
units,
49+
targetedUnits,
50+
1024,
51+
this.bytesPerSecondLabels,
52+
decimals
53+
);
4154
}
4255

43-
formatSecondsFromTo(value: any, units: string, targetedUnits: string): any {
44-
return this.formatFromTo(value, units, targetedUnits, 1000, this.secondsLabels);
56+
formatSecondsFromTo(value: any, units: string, targetedUnits: string, decimals: number = 1): any {
57+
return this.formatFromTo(value, units, targetedUnits, 1000, this.secondsLabels, decimals);
4558
}
4659

47-
formatUnitlessFromTo(value: any, units: string, targetedUnits: string): any {
48-
return this.formatFromTo(value, units, targetedUnits, 1000, this.unitlessLabels);
60+
formatUnitlessFromTo(
61+
value: any,
62+
units: string,
63+
targetedUnits: string,
64+
decimals: number = 1
65+
): any {
66+
return this.formatFromTo(value, units, targetedUnits, 1000, this.unitlessLabels, decimals);
4967
}
5068
}

0 commit comments

Comments
 (0)