Skip to content

Commit

Permalink
fix footer jvm info (DataLinkDC#2559)
Browse files Browse the repository at this point in the history
* Optimize the process

* fix footer jvm info
  • Loading branch information
gaoyan1998 authored Nov 21, 2023
1 parent f4c0537 commit 3d217dd
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 12 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
import org.dinky.data.dto.MetricsLayoutDTO;
import org.dinky.data.enums.BusinessType;
import org.dinky.data.enums.MetricsType;
import org.dinky.data.metrics.Jvm;
import org.dinky.data.model.Metrics;
import org.dinky.data.model.job.JobInstance;
import org.dinky.data.result.ProTableResult;
Expand Down Expand Up @@ -133,4 +134,10 @@ public Result<Map<String, List<Metrics>>> getMetricsLayout() {
public Result<List<Metrics>> getMetricsLayoutByName(@RequestParam String layoutName) {
return Result.succeed(monitorService.getMetricsLayoutByName(layoutName));
}

@GetMapping("/getJvmInfo")
@ApiOperation("Get Jvm Data Display")
public Result<Jvm> getJvmInfo() {
return Result.succeed(Jvm.of());
}
}
27 changes: 15 additions & 12 deletions dinky-web/src/pages/DataStudio/FooterContainer/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,8 @@ import useThemeValue from '@/hooks/useThemeValue';
import JobRunningModal from '@/pages/DataStudio/FooterContainer/JobRunningModal';
import { getCurrentTab } from '@/pages/DataStudio/function';
import { StateType, TabsPageType, VIEW } from '@/pages/DataStudio/model';
import { getSseData } from '@/services/api';
import { getData } from '@/services/api';
import { API_CONSTANTS } from '@/services/endpoints';
import { l } from '@/utils/intl';
import { connect } from '@@/exports';
import { Button, GlobalToken, Space } from 'antd';
Expand Down Expand Up @@ -59,18 +60,20 @@ const FooterContainer: React.FC<FooterContainerProps & StateType> = (props) => {
const currentTab = getCurrentTab(tabs.panes ?? [], tabs.activeKey);

useEffect(() => {
const eventSource = getSseData('/api/sse/getJvmInfo');
eventSource.onmessage = (event) => {
const data = JSON.parse(event.data);
setMemDetailInfo(
Number(data['heapUsed'] / 1024 / 1024).toFixed(0) +
'/' +
Number(data['max'] / 1024 / 1024).toFixed(0) +
'M'
);
};
const t = setInterval(() => {
getData(API_CONSTANTS.MONITOR_GET_JVM_INFO)
.then((res) => {
setMemDetailInfo(
Number(res.data['heapUsed'] / 1024 / 1024).toFixed(0) +
'/' +
Number(res.data['max'] / 1024 / 1024).toFixed(0) +
'M'
);
})
.catch((e) => {});
}, 3000);
return () => {
eventSource.close();
clearTimeout(t);
};
}, []);

Expand Down
1 change: 1 addition & 0 deletions dinky-web/src/services/endpoints.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -267,6 +267,7 @@ export enum API_CONSTANTS {
MONITOR_GET_SYSTEM_DATA = '/api/monitor/getSysData',
MONITOR_GET_FLINK_DATA = '/api/monitor/getFlinkData',
MONITOR_GET_LAST_DATA = '/api/monitor/getLastUpdateData',
MONITOR_GET_JVM_INFO = '/api/monitor/getJvmInfo',
METRICS_LAYOUT_GET_BY_NAME = '/api/monitor/getMetricsLayoutByName',
JOB_METRICS = '/api/monitor/jobMetrics',
SAVE_FLINK_METRICS = '/api/monitor/saveFlinkMetrics/',
Expand Down

0 comments on commit 3d217dd

Please sign in to comment.