Skip to content

Commit 8e1161d

Browse files
authored
perf(Series): Limit the number of series request by breakdown charts (#219)
1 parent a5bffa7 commit 8e1161d

File tree

16 files changed

+238
-616
lines changed

16 files changed

+238
-616
lines changed

docker-compose.e2e.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services:
55
context: ./.config
66
args:
77
grafana_image: ${GRAFANA_IMAGE:-grafana-enterprise}
8-
grafana_version: ${GRAFANA_VERSION:-11.3.2}
8+
grafana_version: ${GRAFANA_VERSION:-11.5.0}
99
ports:
1010
- ${GRAFANA_PORT:-3000}:3000/tcp
1111
volumes:

docker-compose.local.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services:
55
context: ./.config
66
args:
77
grafana_image: ${GRAFANA_IMAGE:-grafana-enterprise}
8-
grafana_version: ${GRAFANA_VERSION:-11.3.2}
8+
grafana_version: ${GRAFANA_VERSION:-11.5.0}
99
ports:
1010
- ${GRAFANA_PORT:-3000}:3000/tcp
1111
volumes:

docker-compose.remote.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services:
55
dockerfile: ./Dockerfile.remote
66
args:
77
grafana_image: ${GRAFANA_IMAGE:-grafana-enterprise}
8-
grafana_version: ${GRAFANA_VERSION:-11.3.2}
8+
grafana_version: ${GRAFANA_VERSION:-11.5.0}
99
backendUrl: ${REMOTE_BACKEND_URL}
1010
basicAuthUser: ${REMOTE_BASIC_AUTH_USER}
1111
basicAuthPassword: ${REMOTE_BASIC_AUTH_PASSWORD}

docker-compose.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services:
55
context: ./.config
66
args:
77
grafana_image: ${GRAFANA_IMAGE:-grafana-enterprise}
8-
grafana_version: ${GRAFANA_VERSION:-11.3.2}
8+
grafana_version: ${GRAFANA_VERSION:-11.5.0}
99
ports:
1010
- ${GRAFANA_PORT:-3000}:3000/tcp
1111
volumes:
-5.86 KB
Loading

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,14 @@
3636
},
3737
"dependencies": {
3838
"@emotion/css": "11.10.6",
39-
"@grafana/data": "11.3.2",
39+
"@grafana/data": "11.5.0",
4040
"@grafana/faro-web-sdk": "^1.10.0",
4141
"@grafana/flamegraph": "11.5.0-218249",
4242
"@grafana/llm": "^0.10.7",
43-
"@grafana/runtime": "11.3.2",
43+
"@grafana/runtime": "11.5.0",
4444
"@grafana/scenes": "^4.22.0",
45-
"@grafana/schema": "11.3.2",
46-
"@grafana/ui": "11.3.2",
45+
"@grafana/schema": "11.5.0",
46+
"@grafana/ui": "11.5.0",
4747
"@react-aria/utils": "^3.25.3",
4848
"@tanstack/react-query": "^5.17.19",
4949
"color": "^4.2.3",

src/pages/ProfilesExplorerView/components/SceneByVariableRepeaterGrid/infrastructure/data-transformations.ts

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,6 @@ import { DataFrame } from '@grafana/data';
22
import { merge } from 'lodash';
33
import { map, Observable } from 'rxjs';
44

5-
import { getSeriesStatsValue } from '../../../infrastructure/helpers/getSeriesStatsValue';
6-
import { LabelsDataSource } from '../../../infrastructure/labels/LabelsDataSource';
7-
85
// General note: because (e.g.) SceneLabelValuesTimeseries sets the data provider in its constructor, data can come as undefined, hence all the optional chaining operators
96
// in the transformers below
107

@@ -38,18 +35,3 @@ export const addStats = () => (source: Observable<DataFrame[]>) =>
3835
});
3936
})
4037
);
41-
42-
// depends on the "addStats" transformation to work properly
43-
export const sortSeries = () => (source: Observable<DataFrame[]>) =>
44-
source.pipe(
45-
map((data: DataFrame[]) =>
46-
data?.sort((d1, d2) => {
47-
const d1Sum = getSeriesStatsValue(d1, 'allValuesSum') || 0;
48-
const d2Sum = getSeriesStatsValue(d2, 'allValuesSum') || 0;
49-
return d2Sum - d1Sum;
50-
})
51-
)
52-
);
53-
54-
export const limitNumberOfSeries = () => (source: Observable<DataFrame[]>) =>
55-
source.pipe(map((data: DataFrame[]) => data?.slice(0, LabelsDataSource.MAX_TIMESERIES_LABEL_VALUES)));

src/pages/ProfilesExplorerView/components/SceneExploreFavorites/SceneExploreFavorites.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ export class SceneExploreFavorites extends SceneObjectBase<SceneExploreFavorites
5656
new SelectAction({
5757
type: 'expand-panel',
5858
item,
59-
tooltip: () => 'Expand this panel to view all the data',
59+
tooltip: () => 'Expand panel to view all the data',
6060
skipVariablesInterpolation: true,
6161
})
6262
);

src/pages/ProfilesExplorerView/components/SceneExploreServiceLabels/components/SceneGroupByLabels/components/SceneLabelValuesGrid/SceneLabelValuesGrid.tsx

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,7 @@ import {
3838
SceneQuickFilterState,
3939
} from '../../../../../SceneByVariableRepeaterGrid/components/SceneQuickFilter';
4040
import { sortFavGridItems } from '../../../../../SceneByVariableRepeaterGrid/domain/sortFavGridItems';
41-
import {
42-
addRefId,
43-
addStats,
44-
sortSeries,
45-
} from '../../../../../SceneByVariableRepeaterGrid/infrastructure/data-transformations';
41+
import { addRefId, addStats } from '../../../../../SceneByVariableRepeaterGrid/infrastructure/data-transformations';
4642
import { GridItemData } from '../../../../../SceneByVariableRepeaterGrid/types/GridItemData';
4743
import { SceneLabelValuePanel } from './components/SceneLabelValuePanel';
4844
import { buildLabelValuesGridQueryRunner } from './infrastructure/buildLabelValuesGridQueryRunner';
@@ -86,7 +82,7 @@ export class SceneLabelValuesGrid extends SceneObjectBase<SceneLabelValuesGridSt
8682
isLoading: true,
8783
$data: new SceneDataTransformer({
8884
$data: buildLabelValuesGridQueryRunner({ label }),
89-
transformations: [addRefId, addStats, sortSeries],
85+
transformations: [addRefId, addStats],
9086
}),
9187
hideNoData: false,
9288
headerActions,
@@ -252,7 +248,7 @@ export class SceneLabelValuesGrid extends SceneObjectBase<SceneLabelValuesGridSt
252248
isLoading: true,
253249
$data: new SceneDataTransformer({
254250
$data: buildLabelValuesGridQueryRunner({ label: this.state.label }),
255-
transformations: [addRefId, addStats, sortSeries],
251+
transformations: [addRefId, addStats],
256252
}),
257253
});
258254

src/pages/ProfilesExplorerView/components/SceneLabelValuesBarGauge.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import { getColorByIndex } from '../helpers/getColorByIndex';
1616
import { getSeriesLabelFieldName } from '../infrastructure/helpers/getSeriesLabelFieldName';
1717
import { getSeriesStatsValue } from '../infrastructure/helpers/getSeriesStatsValue';
1818
import { buildTimeSeriesQueryRunner } from '../infrastructure/timeseries/buildTimeSeriesQueryRunner';
19-
import { addRefId, addStats, sortSeries } from './SceneByVariableRepeaterGrid/infrastructure/data-transformations';
19+
import { addRefId, addStats } from './SceneByVariableRepeaterGrid/infrastructure/data-transformations';
2020
import { GridItemData } from './SceneByVariableRepeaterGrid/types/GridItemData';
2121

2222
interface SceneLabelValuesBarGaugeState extends SceneObjectState {
@@ -38,7 +38,7 @@ export class SceneLabelValuesBarGauge extends SceneObjectBase<SceneLabelValuesBa
3838
.setData(
3939
new SceneDataTransformer({
4040
$data: buildTimeSeriesQueryRunner(item.queryRunnerParams),
41-
transformations: [addRefId, addStats, sortSeries],
41+
transformations: [addRefId, addStats],
4242
})
4343
)
4444
.setHeaderActions(headerActions(item))

0 commit comments

Comments
 (0)