feat: monitor button

This commit is contained in:
jialin
2026-02-04 20:14:25 +08:00
parent 47596fdb1a
commit 4e8b5e26ae
40 changed files with 352 additions and 176 deletions
@@ -0,0 +1,22 @@
import { systemConfigAtom } from '@/atoms/system';
import { setAtomStorage } from '@/atoms/utils';
import { SystemConfig } from '@/pages/cluster-management/config/types';
import { request } from '@umijs/max';
export const SYSTEM_CONFIG_API = '/config';
export const fetchSystemConfig = async () => {
try {
const data = await request<SystemConfig>(`${SYSTEM_CONFIG_API}`, {
method: 'GET'
});
setAtomStorage(systemConfigAtom, {
...(data || {}),
showMonitoring:
!!data?.grafana_url || data?.disable_builtin_observability === false
});
} catch (error) {
// handle error if needed
setAtomStorage(systemConfigAtom, {});
}
};
@@ -1,27 +0,0 @@
import { useQueryData } from '@/hooks/use-query-data-list';
import { SystemConfig } from '@/pages/cluster-management/config/types';
import { request } from '@umijs/max';
export const SYSTEM_CONFIG_API = '/config';
const useQuerySystemConfig = () => {
async function querySystemConfig() {
return request<SystemConfig>(`${SYSTEM_CONFIG_API}`, {
method: 'GET'
});
}
const { detailData, loading, cancelRequest, fetchData } =
useQueryData<SystemConfig>({
key: 'system-config',
fetchDetail: querySystemConfig
});
return {
systemConfig: detailData,
loading,
cancelRequest,
fetchSystemConfig: fetchData
};
};
export default useQuerySystemConfig;