chore: update logs in infra monitoring for analytics (#6994)

This commit is contained in:
Amlan Kumar Nandy 2025-02-04 11:31:37 +05:30 committed by GitHub
parent cf95b15ba1
commit 5fe04078e5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
18 changed files with 280 additions and 82 deletions

View File

@ -181,6 +181,10 @@ function ClusterDetails({
const handleTabChange = (e: RadioChangeEvent): void => {
setSelectedView(e.target.value);
logEvent('Infra Monitoring: Clusters list details tab changed', {
cluster: cluster?.clusterUID,
view: e.target.value,
});
};
const handleTimeChange = useCallback(
@ -204,6 +208,7 @@ function ClusterDetails({
logEvent('Infra Monitoring: Clusters list details time updated', {
cluster: cluster?.clusterUID,
interval,
view: selectedView,
});
},
// eslint-disable-next-line react-hooks/exhaustive-deps

View File

@ -240,6 +240,11 @@ function K8sClustersList({
}
}, [selectedRowData, fetchGroupedByRowData]);
const numberOfPages = useMemo(() => Math.ceil(totalCount / pageSize), [
totalCount,
pageSize,
]);
const handleTableChange: TableProps<K8sClustersRowData>['onChange'] = useCallback(
(
pagination: TablePaginationConfig,
@ -250,6 +255,11 @@ function K8sClustersList({
): void => {
if (pagination.current) {
setCurrentPage(pagination.current);
logEvent('Infra Monitoring: K8s clusters list page number changed', {
page: pagination.current,
pageSize,
numberOfPages,
});
}
if ('field' in sorter && sorter.order) {
@ -261,7 +271,7 @@ function K8sClustersList({
setOrderBy(null);
}
},
[],
[numberOfPages, pageSize],
);
const { handleChangeQueryData } = useQueryOperations({
@ -275,15 +285,13 @@ function K8sClustersList({
handleChangeQueryData('filters', value);
setCurrentPage(1);
logEvent('Infra Monitoring: K8s list filters applied', {
filters: value,
});
logEvent('Infra Monitoring: K8s clusters list filters applied', {});
},
[handleChangeQueryData],
);
useEffect(() => {
logEvent('Infra Monitoring: K8s list page visited', {});
logEvent('Infra Monitoring: K8s clusters list page visited', {});
}, []);
const selectedClusterData = useMemo(() => {
@ -442,6 +450,7 @@ function K8sClustersList({
setCurrentPage(1);
setGroupBy(groupBy);
setExpandedRowKeys([]);
logEvent('Infra Monitoring: K8s clusters list group by changed', {});
},
[groupByFiltersData],
);
@ -457,6 +466,16 @@ function K8sClustersList({
}
}, [groupByFiltersData]);
const onPaginationChange = (page: number, pageSize: number): void => {
setCurrentPage(page);
setPageSize(pageSize);
logEvent('Infra Monitoring: K8s clusters list page number changed', {
page,
pageSize,
numberOfPages,
});
};
return (
<div className="k8s-list">
<K8sHeader
@ -482,10 +501,7 @@ function K8sClustersList({
total: totalCount,
showSizeChanger: true,
hideOnSinglePage: false,
onChange: (page, pageSize): void => {
setCurrentPage(page);
setPageSize(pageSize);
},
onChange: onPaginationChange,
}}
scroll={{ x: true }}
loading={{

View File

@ -195,6 +195,10 @@ function DaemonSetDetails({
const handleTabChange = (e: RadioChangeEvent): void => {
setSelectedView(e.target.value);
logEvent('Infra Monitoring: DaemonSets list details tab changed', {
daemonSet: daemonSet?.daemonSetName,
view: e.target.value,
});
};
const handleTimeChange = useCallback(
@ -218,6 +222,7 @@ function DaemonSetDetails({
logEvent('Infra Monitoring: DaemonSets list details time updated', {
daemonSet: daemonSet?.daemonSetName,
interval,
view: selectedView,
});
},
// eslint-disable-next-line react-hooks/exhaustive-deps

View File

@ -243,6 +243,11 @@ function K8sDaemonSetsList({
}
}, [selectedRowData, fetchGroupedByRowData]);
const numberOfPages = useMemo(() => Math.ceil(totalCount / pageSize), [
totalCount,
pageSize,
]);
const handleTableChange: TableProps<K8sDaemonSetsRowData>['onChange'] = useCallback(
(
pagination: TablePaginationConfig,
@ -253,6 +258,11 @@ function K8sDaemonSetsList({
): void => {
if (pagination.current) {
setCurrentPage(pagination.current);
logEvent('Infra Monitoring: K8s daemonSets list page number changed', {
page: pagination.current,
pageSize,
numberOfPages,
});
}
if ('field' in sorter && sorter.order) {
@ -264,7 +274,7 @@ function K8sDaemonSetsList({
setOrderBy(null);
}
},
[],
[numberOfPages, pageSize],
);
const { handleChangeQueryData } = useQueryOperations({
@ -278,15 +288,13 @@ function K8sDaemonSetsList({
handleChangeQueryData('filters', value);
setCurrentPage(1);
logEvent('Infra Monitoring: K8s list filters applied', {
filters: value,
});
logEvent('Infra Monitoring: K8s daemonSets list filters applied', {});
},
[handleChangeQueryData],
);
useEffect(() => {
logEvent('Infra Monitoring: K8s list page visited', {});
logEvent('Infra Monitoring: K8s daemonSets list page visited', {});
}, []);
const selectedDaemonSetData = useMemo(() => {
@ -448,6 +456,8 @@ function K8sDaemonSetsList({
setCurrentPage(1);
setGroupBy(groupBy);
setExpandedRowKeys([]);
logEvent('Infra Monitoring: K8s daemonSets list group by changed', {});
},
[groupByFiltersData],
);
@ -463,6 +473,16 @@ function K8sDaemonSetsList({
}
}, [groupByFiltersData]);
const onPaginationChange = (page: number, pageSize: number): void => {
setCurrentPage(page);
setPageSize(pageSize);
logEvent('Infra Monitoring: K8s daemonSets list page number changed', {
page,
pageSize,
numberOfPages,
});
};
return (
<div className="k8s-list">
<K8sHeader
@ -490,10 +510,7 @@ function K8sDaemonSetsList({
total: totalCount,
showSizeChanger: true,
hideOnSinglePage: false,
onChange: (page, pageSize): void => {
setCurrentPage(page);
setPageSize(pageSize);
},
onChange: onPaginationChange,
}}
scroll={{ x: true }}
loading={{

View File

@ -197,6 +197,10 @@ function DeploymentDetails({
const handleTabChange = (e: RadioChangeEvent): void => {
setSelectedView(e.target.value);
logEvent('Infra Monitoring: Deployments list details tab changed', {
deployment: deployment?.deploymentName,
view: e.target.value,
});
};
const handleTimeChange = useCallback(
@ -220,6 +224,7 @@ function DeploymentDetails({
logEvent('Infra Monitoring: Deployments list details time updated', {
deployment: deployment?.deploymentName,
interval,
view: selectedView,
});
},
// eslint-disable-next-line react-hooks/exhaustive-deps

View File

@ -245,6 +245,11 @@ function K8sDeploymentsList({
}
}, [selectedRowData, fetchGroupedByRowData]);
const numberOfPages = useMemo(() => Math.ceil(totalCount / pageSize), [
totalCount,
pageSize,
]);
const handleTableChange: TableProps<K8sDeploymentsRowData>['onChange'] = useCallback(
(
pagination: TablePaginationConfig,
@ -255,6 +260,11 @@ function K8sDeploymentsList({
): void => {
if (pagination.current) {
setCurrentPage(pagination.current);
logEvent('Infra Monitoring: K8s deployments list page number changed', {
page: pagination.current,
pageSize,
numberOfPages,
});
}
if ('field' in sorter && sorter.order) {
@ -266,7 +276,7 @@ function K8sDeploymentsList({
setOrderBy(null);
}
},
[],
[numberOfPages, pageSize],
);
const { handleChangeQueryData } = useQueryOperations({
@ -280,15 +290,13 @@ function K8sDeploymentsList({
handleChangeQueryData('filters', value);
setCurrentPage(1);
logEvent('Infra Monitoring: K8s list filters applied', {
filters: value,
});
logEvent('Infra Monitoring: K8s deployments list filters applied', {});
},
[handleChangeQueryData],
);
useEffect(() => {
logEvent('Infra Monitoring: K8s list page visited', {});
logEvent('Infra Monitoring: K8s deployments list page visited', {});
}, []);
const selectedDeploymentData = useMemo(() => {
@ -452,6 +460,8 @@ function K8sDeploymentsList({
setCurrentPage(1);
setGroupBy(groupBy);
setExpandedRowKeys([]);
logEvent('Infra Monitoring: K8s deployments list group by changed', {});
},
[groupByFiltersData],
);
@ -467,6 +477,16 @@ function K8sDeploymentsList({
}
}, [groupByFiltersData]);
const onPaginationChange = (page: number, pageSize: number): void => {
setCurrentPage(page);
setPageSize(pageSize);
logEvent('Infra Monitoring: K8s deployments list page number changed', {
page,
pageSize,
numberOfPages,
});
};
return (
<div className="k8s-list">
<K8sHeader
@ -494,10 +514,7 @@ function K8sDeploymentsList({
total: totalCount,
showSizeChanger: true,
hideOnSinglePage: false,
onChange: (page, pageSize): void => {
setCurrentPage(page);
setPageSize(pageSize);
},
onChange: onPaginationChange,
}}
scroll={{ x: true }}
loading={{

View File

@ -4,6 +4,7 @@ import { VerticalAlignTopOutlined } from '@ant-design/icons';
import * as Sentry from '@sentry/react';
import type { CollapseProps } from 'antd';
import { Collapse, Tooltip, Typography } from 'antd';
import logEvent from 'api/common/logEvent';
import QuickFilters from 'components/QuickFilters/QuickFilters';
import { QuickFiltersSource } from 'components/QuickFilters/types';
import { useQueryBuilder } from 'hooks/queryBuilder/useQueryBuilder';
@ -68,6 +69,11 @@ export default function InfraMonitoringK8s(): JSX.Element {
// in infra monitoring k8s, we are using only one query, hence updating the 0th index of queryData
handleChangeQueryData('filters', query.builder.queryData[0].filters);
setQuickFiltersLastUpdated(Date.now());
logEvent(
`Infra Monitoring: K8s ${selectedCategory} list quick filters applied`,
{},
);
};
const items: CollapseProps['items'] = [

View File

@ -192,6 +192,10 @@ function JobDetails({
const handleTabChange = (e: RadioChangeEvent): void => {
setSelectedView(e.target.value);
logEvent('Infra Monitoring: Jobs list details tab changed', {
job: job?.jobName,
view: e.target.value,
});
};
const handleTimeChange = useCallback(
@ -215,6 +219,7 @@ function JobDetails({
logEvent('Infra Monitoring: Jobs list details time updated', {
job: job?.jobName,
interval,
view: selectedView,
});
},
// eslint-disable-next-line react-hooks/exhaustive-deps

View File

@ -234,6 +234,11 @@ function K8sJobsList({
}
}, [selectedRowData, fetchGroupedByRowData]);
const numberOfPages = useMemo(() => Math.ceil(totalCount / pageSize), [
totalCount,
pageSize,
]);
const handleTableChange: TableProps<K8sJobsRowData>['onChange'] = useCallback(
(
pagination: TablePaginationConfig,
@ -242,6 +247,11 @@ function K8sJobsList({
): void => {
if (pagination.current) {
setCurrentPage(pagination.current);
logEvent('Infra Monitoring: K8s jobs list page number changed', {
page: pagination.current,
pageSize,
numberOfPages,
});
}
if ('field' in sorter && sorter.order) {
@ -253,7 +263,7 @@ function K8sJobsList({
setOrderBy(null);
}
},
[],
[numberOfPages, pageSize],
);
const { handleChangeQueryData } = useQueryOperations({
@ -267,15 +277,13 @@ function K8sJobsList({
handleChangeQueryData('filters', value);
setCurrentPage(1);
logEvent('Infra Monitoring: K8s list filters applied', {
filters: value,
});
logEvent('Infra Monitoring: K8s jobs list filters applied', {});
},
[handleChangeQueryData],
);
useEffect(() => {
logEvent('Infra Monitoring: K8s list page visited', {});
logEvent('Infra Monitoring: K8s jobs list page visited', {});
}, []);
const selectedJobData = useMemo(() => {
@ -424,6 +432,8 @@ function K8sJobsList({
setCurrentPage(1);
setGroupBy(groupBy);
setExpandedRowKeys([]);
logEvent('Infra Monitoring: K8s jobs list group by changed', {});
},
[groupByFiltersData],
);
@ -439,6 +449,16 @@ function K8sJobsList({
}
}, [groupByFiltersData]);
const onPaginationChange = (page: number, pageSize: number): void => {
setCurrentPage(page);
setPageSize(pageSize);
logEvent('Infra Monitoring: K8s jobs list page number changed', {
page,
pageSize,
numberOfPages,
});
};
return (
<div className="k8s-list">
<K8sHeader
@ -466,10 +486,7 @@ function K8sJobsList({
total: totalCount,
showSizeChanger: true,
hideOnSinglePage: false,
onChange: (page, pageSize): void => {
setCurrentPage(page);
setPageSize(pageSize);
},
onChange: onPaginationChange,
}}
scroll={{ x: true }}
loading={{

View File

@ -242,6 +242,11 @@ function K8sNamespacesList({
}
}, [selectedRowData, fetchGroupedByRowData]);
const numberOfPages = useMemo(() => Math.ceil(totalCount / pageSize), [
totalCount,
pageSize,
]);
const handleTableChange: TableProps<K8sNamespacesRowData>['onChange'] = useCallback(
(
pagination: TablePaginationConfig,
@ -252,6 +257,11 @@ function K8sNamespacesList({
): void => {
if (pagination.current) {
setCurrentPage(pagination.current);
logEvent('Infra Monitoring: K8s namespaces list page number changed', {
page: pagination.current,
pageSize,
numberOfPages,
});
}
if ('field' in sorter && sorter.order) {
@ -263,7 +273,7 @@ function K8sNamespacesList({
setOrderBy(null);
}
},
[],
[numberOfPages, pageSize],
);
const { handleChangeQueryData } = useQueryOperations({
@ -277,15 +287,13 @@ function K8sNamespacesList({
handleChangeQueryData('filters', value);
setCurrentPage(1);
logEvent('Infra Monitoring: K8s list filters applied', {
filters: value,
});
logEvent('Infra Monitoring: K8s namespaces list filters applied', {});
},
[handleChangeQueryData],
);
useEffect(() => {
logEvent('Infra Monitoring: K8s list page visited', {});
logEvent('Infra Monitoring: K8s namespaces list page visited', {});
}, []);
const selectedNamespaceData = useMemo(() => {
@ -449,6 +457,8 @@ function K8sNamespacesList({
setCurrentPage(1);
setGroupBy(groupBy);
setExpandedRowKeys([]);
logEvent('Infra Monitoring: K8s namespaces list group by changed', {});
},
[groupByFiltersData],
);
@ -464,6 +474,16 @@ function K8sNamespacesList({
}
}, [groupByFiltersData]);
const onPaginationChange = (page: number, pageSize: number): void => {
setCurrentPage(page);
setPageSize(pageSize);
logEvent('Infra Monitoring: K8s namespaces list page number changed', {
page,
pageSize,
numberOfPages,
});
};
return (
<div className="k8s-list">
<K8sHeader
@ -489,10 +509,7 @@ function K8sNamespacesList({
total: totalCount,
showSizeChanger: true,
hideOnSinglePage: false,
onChange: (page, pageSize): void => {
setCurrentPage(page);
setPageSize(pageSize);
},
onChange: onPaginationChange,
}}
scroll={{ x: true }}
loading={{

View File

@ -183,6 +183,10 @@ function NamespaceDetails({
const handleTabChange = (e: RadioChangeEvent): void => {
setSelectedView(e.target.value);
logEvent('Infra Monitoring: Namespaces list details tab changed', {
namespace: namespace?.namespaceName,
view: e.target.value,
});
};
const handleTimeChange = useCallback(
@ -206,6 +210,7 @@ function NamespaceDetails({
logEvent('Infra Monitoring: Namespaces list details time updated', {
namespace: namespace?.namespaceName,
interval,
view: selectedView,
});
},
// eslint-disable-next-line react-hooks/exhaustive-deps

View File

@ -233,6 +233,11 @@ function K8sNodesList({
}
}, [selectedRowData, fetchGroupedByRowData]);
const numberOfPages = useMemo(() => Math.ceil(totalCount / pageSize), [
totalCount,
pageSize,
]);
const handleTableChange: TableProps<K8sNodesRowData>['onChange'] = useCallback(
(
pagination: TablePaginationConfig,
@ -241,6 +246,11 @@ function K8sNodesList({
): void => {
if (pagination.current) {
setCurrentPage(pagination.current);
logEvent('Infra Monitoring: K8s nodes list page number changed', {
page: pagination.current,
pageSize,
numberOfPages,
});
}
if ('field' in sorter && sorter.order) {
@ -252,7 +262,7 @@ function K8sNodesList({
setOrderBy(null);
}
},
[],
[numberOfPages, pageSize],
);
const { handleChangeQueryData } = useQueryOperations({
@ -266,15 +276,13 @@ function K8sNodesList({
handleChangeQueryData('filters', value);
setCurrentPage(1);
logEvent('Infra Monitoring: K8s list filters applied', {
filters: value,
});
logEvent('Infra Monitoring: K8s nodes list filters applied', {});
},
[handleChangeQueryData],
);
useEffect(() => {
logEvent('Infra Monitoring: K8s list page visited', {});
logEvent('Infra Monitoring: K8s nodes list page visited', {});
}, []);
const selectedNodeData = useMemo(() => {
@ -427,6 +435,8 @@ function K8sNodesList({
setCurrentPage(1);
setGroupBy(groupBy);
setExpandedRowKeys([]);
logEvent('Infra Monitoring: K8s nodes list group by changed', {});
},
[groupByFiltersData],
);
@ -442,6 +452,16 @@ function K8sNodesList({
}
}, [groupByFiltersData]);
const onPaginationChange = (page: number, pageSize: number): void => {
setCurrentPage(page);
setPageSize(pageSize);
logEvent('Infra Monitoring: K8s nodes list page number changed', {
page,
pageSize,
numberOfPages,
});
};
return (
<div className="k8s-list">
<K8sHeader
@ -467,10 +487,7 @@ function K8sNodesList({
total: totalCount,
showSizeChanger: true,
hideOnSinglePage: false,
onChange: (page, pageSize): void => {
setCurrentPage(page);
setPageSize(pageSize);
},
onChange: onPaginationChange,
}}
scroll={{ x: true }}
loading={{

View File

@ -181,6 +181,10 @@ function NodeDetails({
const handleTabChange = (e: RadioChangeEvent): void => {
setSelectedView(e.target.value);
logEvent('Infra Monitoring: Nodes list details tab changed', {
node: node?.nodeUID,
view: e.target.value,
});
};
const handleTimeChange = useCallback(
@ -204,6 +208,7 @@ function NodeDetails({
logEvent('Infra Monitoring: Nodes list details time updated', {
node: node?.nodeUID,
interval,
view: selectedView,
});
},
// eslint-disable-next-line react-hooks/exhaustive-deps

View File

@ -248,6 +248,11 @@ function K8sPodsList({
groupBy,
]);
const numberOfPages = useMemo(() => Math.ceil(totalCount / pageSize), [
totalCount,
pageSize,
]);
const handleTableChange: TableProps<K8sPodsRowData>['onChange'] = useCallback(
(
pagination: TablePaginationConfig,
@ -256,6 +261,11 @@ function K8sPodsList({
): void => {
if (pagination.current) {
setCurrentPage(pagination.current);
logEvent('Infra Monitoring: K8s pods list page number changed', {
page: pagination.current,
pageSize,
numberOfPages,
});
}
if ('field' in sorter && sorter.order) {
@ -267,7 +277,7 @@ function K8sPodsList({
setOrderBy(null);
}
},
[],
[numberOfPages, pageSize],
);
const { handleChangeQueryData } = useQueryOperations({
@ -281,9 +291,7 @@ function K8sPodsList({
handleChangeQueryData('filters', value);
setCurrentPage(1);
logEvent('Infra Monitoring: K8s list filters applied', {
filters: value,
});
logEvent('Infra Monitoring: K8s pods list filters applied', {});
},
[handleChangeQueryData],
);
@ -308,12 +316,14 @@ function K8sPodsList({
setCurrentPage(1);
setGroupBy(groupBy);
setExpandedRowKeys([]);
logEvent('Infra Monitoring: K8s pods list group by changed', {});
},
[groupByFiltersData],
);
useEffect(() => {
logEvent('Infra Monitoring: K8s list page visited', {});
logEvent('Infra Monitoring: K8s pods list page visited', {});
}, []);
const selectedPodData = useMemo(() => {
@ -350,7 +360,7 @@ function K8sPodsList({
handleGroupByRowClick(record);
}
logEvent('Infra Monitoring: K8s list item clicked', {
logEvent('Infra Monitoring: K8s pods list item clicked', {
podUID: record.podUID,
});
};
@ -499,6 +509,16 @@ function K8sPodsList({
);
};
const onPaginationChange = (page: number, pageSize: number): void => {
setCurrentPage(page);
setPageSize(pageSize);
logEvent('Infra Monitoring: K8s pods list page number changed', {
page,
pageSize,
numberOfPages,
});
};
return (
<div className="k8s-list">
<K8sHeader
@ -530,10 +550,7 @@ function K8sPodsList({
total: totalCount,
showSizeChanger: true,
hideOnSinglePage: false,
onChange: (page, pageSize): void => {
setCurrentPage(page);
setPageSize(pageSize);
},
onChange: onPaginationChange,
}}
loading={{
spinning: isFetching || isLoading,

View File

@ -198,6 +198,10 @@ function PodDetails({
const handleTabChange = (e: RadioChangeEvent): void => {
setSelectedView(e.target.value);
logEvent('Infra Monitoring: Pods list details tab changed', {
pod: pod?.podUID,
view: e.target.value,
});
};
const handleTimeChange = useCallback(
@ -221,6 +225,7 @@ function PodDetails({
logEvent('Infra Monitoring: Pods list details time updated', {
pod: pod?.podUID,
interval,
view: selectedView,
});
},
// eslint-disable-next-line react-hooks/exhaustive-deps

View File

@ -245,6 +245,11 @@ function K8sStatefulSetsList({
}
}, [selectedRowData, fetchGroupedByRowData]);
const numberOfPages = useMemo(() => Math.ceil(totalCount / pageSize), [
totalCount,
pageSize,
]);
const handleTableChange: TableProps<K8sStatefulSetsRowData>['onChange'] = useCallback(
(
pagination: TablePaginationConfig,
@ -255,6 +260,11 @@ function K8sStatefulSetsList({
): void => {
if (pagination.current) {
setCurrentPage(pagination.current);
logEvent('Infra Monitoring: K8s statefulSets list page number changed', {
page: pagination.current,
pageSize,
numberOfPages,
});
}
if ('field' in sorter && sorter.order) {
@ -266,7 +276,7 @@ function K8sStatefulSetsList({
setOrderBy(null);
}
},
[],
[numberOfPages, pageSize],
);
const { handleChangeQueryData } = useQueryOperations({
@ -280,15 +290,13 @@ function K8sStatefulSetsList({
handleChangeQueryData('filters', value);
setCurrentPage(1);
logEvent('Infra Monitoring: K8s list filters applied', {
filters: value,
});
logEvent('Infra Monitoring: K8s statefulSets list filters applied', {});
},
[handleChangeQueryData],
);
useEffect(() => {
logEvent('Infra Monitoring: K8s list page visited', {});
logEvent('Infra Monitoring: K8s statefulSets list page visited', {});
}, []);
const selectedStatefulSetData = useMemo(() => {
@ -449,6 +457,8 @@ function K8sStatefulSetsList({
setCurrentPage(1);
setGroupBy(groupBy);
setExpandedRowKeys([]);
logEvent('Infra Monitoring: K8s statefulSets list group by changed', {});
},
[groupByFiltersData],
);
@ -464,6 +474,16 @@ function K8sStatefulSetsList({
}
}, [groupByFiltersData]);
const onPaginationChange = (page: number, pageSize: number): void => {
setCurrentPage(page);
setPageSize(pageSize);
logEvent('Infra Monitoring: K8s statefulSets list page number changed', {
page,
pageSize,
numberOfPages,
});
};
return (
<div className="k8s-list">
<K8sHeader
@ -491,10 +511,7 @@ function K8sStatefulSetsList({
total: totalCount,
showSizeChanger: true,
hideOnSinglePage: false,
onChange: (page, pageSize): void => {
setCurrentPage(page);
setPageSize(pageSize);
},
onChange: onPaginationChange,
}}
scroll={{ x: true }}
loading={{

View File

@ -198,6 +198,10 @@ function StatefulSetDetails({
const handleTabChange = (e: RadioChangeEvent): void => {
setSelectedView(e.target.value);
logEvent('Infra Monitoring: StatefulSets list details tab changed', {
statefulSet: statefulSet?.statefulSetName,
view: e.target.value,
});
};
const handleTimeChange = useCallback(
@ -221,6 +225,7 @@ function StatefulSetDetails({
logEvent('Infra Monitoring: StatefulSets list details time updated', {
statefulSet: statefulSet?.statefulSetName,
interval,
view: selectedView,
});
},
// eslint-disable-next-line react-hooks/exhaustive-deps

View File

@ -237,6 +237,11 @@ function K8sVolumesList({
}
}, [selectedRowData, fetchGroupedByRowData]);
const numberOfPages = useMemo(() => Math.ceil(totalCount / pageSize), [
totalCount,
pageSize,
]);
const handleTableChange: TableProps<K8sVolumesRowData>['onChange'] = useCallback(
(
pagination: TablePaginationConfig,
@ -245,6 +250,11 @@ function K8sVolumesList({
): void => {
if (pagination.current) {
setCurrentPage(pagination.current);
logEvent('Infra Monitoring: K8s volumes list page number changed', {
page: pagination.current,
pageSize,
numberOfPages,
});
}
if ('field' in sorter && sorter.order) {
@ -256,7 +266,7 @@ function K8sVolumesList({
setOrderBy(null);
}
},
[],
[numberOfPages, pageSize],
);
const { handleChangeQueryData } = useQueryOperations({
@ -270,15 +280,13 @@ function K8sVolumesList({
handleChangeQueryData('filters', value);
setCurrentPage(1);
logEvent('Infra Monitoring: K8s list filters applied', {
filters: value,
});
logEvent('Infra Monitoring: K8s volumes list filters applied', {});
},
[handleChangeQueryData],
);
useEffect(() => {
logEvent('Infra Monitoring: K8s list page visited', {});
logEvent('Infra Monitoring: K8s volumes list page visited', {});
}, []);
const selectedVolumeData = useMemo(() => {
@ -434,6 +442,8 @@ function K8sVolumesList({
setCurrentPage(1);
setGroupBy(groupBy);
setExpandedRowKeys([]);
logEvent('Infra Monitoring: K8s volumes list group by changed', {});
},
[groupByFiltersData],
);
@ -449,6 +459,16 @@ function K8sVolumesList({
}
}, [groupByFiltersData]);
const onPaginationChange = (page: number, pageSize: number): void => {
setCurrentPage(page);
setPageSize(pageSize);
logEvent('Infra Monitoring: K8s volumes list page number changed', {
page,
pageSize,
numberOfPages,
});
};
return (
<div className="k8s-list">
<K8sHeader
@ -476,10 +496,7 @@ function K8sVolumesList({
total: totalCount,
showSizeChanger: true,
hideOnSinglePage: false,
onChange: (page, pageSize): void => {
setCurrentPage(page);
setPageSize(pageSize);
},
onChange: onPaginationChange,
}}
scroll={{ x: true }}
loading={{