Skip to content

Commit

Permalink
revert to stable version + prettify container logs
Browse files Browse the repository at this point in the history
Signed-off-by: Abdelsalem <abdelsalem.hedhili@rte-france.com>
  • Loading branch information
AbdelHedhili committed Sep 25, 2024
1 parent d86ee93 commit c0de1bc
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 16 deletions.
14 changes: 3 additions & 11 deletions src/components/report-viewer/report-viewer.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ export default function ReportViewer({ report, reportType }) {
const [reportVerticalPositionFromTop, setReportVerticalPositionFromTop] = useState(undefined);
const [isLogLoading, , fetchReportLogs] = useReportFetcher(reportType);

const [displayedSelectedReportId, setDisplayedSelectedReportId] = useState(null);
const selectedReportId = useSelector((state) => state.reportSelectedReportId);
const severityFilter = useSelector((state) => state.reportSeverityFilter);
const messageFilter = useSelector((state) => state.reportMessageFilter);
Expand Down Expand Up @@ -91,29 +90,22 @@ export default function ReportViewer({ report, reportType }) {
);

useEffect(() => {
//refresh the logs when we change the filters
if (selectedReportId != null) {
refreshLogsOnSelectedReport(selectedReportId, severityFilter, messageFilter);
}
refreshLogsOnSelectedReport(selectedReportId, severityFilter, messageFilter);
}, [messageFilter, severityFilter, selectedReportId, refreshLogsOnSelectedReport]);

useEffect(() => {
const reportTree = mapReportsTree(report);
treeView.current = initializeTreeDataAndComponent(reportTree);
setExpandedTreeReports([report.id]);
setLogs(mapReportLog(report, reportTree.severities));
// we don't dispatch the new report id on initialisation because we don't want trigger the refreshLogsOnSelectedReport
// that fetch the logs (right part), since the first request return both the tree and the logs
dispatch(setReportFilters(null, '', getDefaultSeverityFilter(reportTree.severities)));
setDisplayedSelectedReportId(report.id);
dispatch(setReportFilters(report.id, '', getDefaultSeverityFilter(reportTree.severities)));
}, [report, initializeTreeDataAndComponent, dispatch]);

const handleReportVerticalPositionFromTop = useCallback((node) => {
setReportVerticalPositionFromTop(node?.getBoundingClientRect()?.top);
}, []);

const handleSelectNode = (_, reportId) => {
setDisplayedSelectedReportId(reportId);
if (selectedReportId !== reportId) {
dispatch(
setReportFilters(reportId, '', getDefaultSeverityFilter(reportTreeData.current[reportId].severities))
Expand Down Expand Up @@ -165,7 +157,7 @@ export default function ReportViewer({ report, reportType }) {
<ReportTreeViewContext.Provider value={isHighlighted}>
{/*TODO do we need to useMemo/useCallback these props to avoid rerenders ?*/}
<ReportTree
selectedReportId={displayedSelectedReportId}
selectedReportId={selectedReportId}
expandedTreeReports={expandedTreeReports}
setExpandedTreeReports={setExpandedTreeReports}
handleSelectNode={handleSelectNode}
Expand Down
16 changes: 13 additions & 3 deletions src/hooks/use-report-fetcher.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,17 @@ function setNodeName(report: Report, nodesNames: Map<string, string>) {
return report;
}

function prettifyReportLogMessage(reports: ReportLog[], nodesNames: Map<string, string>) {
reports.forEach((report) => {
if (report.parentId == null) {
if (report.message !== ROOT_NODE_LABEL) {
report.message = nodesNames?.get(report.message) ?? report.message;
}
}
});
return reports;
}

export const useReportFetcher = (
computingAndNetworkModificationType: keyof typeof COMPUTING_AND_NETWORK_MODIFICATION_TYPE
): [
Expand Down Expand Up @@ -106,7 +117,6 @@ export const useReportFetcher = (
const fetchReportLogs = useCallback(
(reportId: string, severityList: string[], reportType: ReportType, messageFilter: string) => {
let fetchPromise: (severityList: string[], reportId: string) => Promise<ReportLog[]>;

if (reportType === REPORT_TYPE.GLOBAL) {
fetchPromise = (severityList: string[]) =>
fetchNodeReportLogs(studyUuid, currentNode!.id, null, severityList, messageFilter, true);
Expand All @@ -115,10 +125,10 @@ export const useReportFetcher = (
fetchNodeReportLogs(studyUuid, currentNode!.id, reportId, severityList, messageFilter, false);
}
return fetchPromise(severityList, reportId).then((r) => {
return r;
return prettifyReportLogMessage(r, nodesNames);
});
},
[currentNode, studyUuid]
[currentNode, studyUuid, nodesNames]
);

return [isLoading, fetchRawParentReport, fetchReportLogs];
Expand Down
4 changes: 2 additions & 2 deletions src/services/study/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -84,9 +84,9 @@ export function fetchNodeReport(studyUuid, nodeUuid, reportId, severityFilterLis
return backendFetchJson(url);
}

export function fetchNodeReportLogs(studyUuid, nodeUuid, reportId, severityFilterList, messageFilter, withParentNodes) {
export function fetchNodeReportLogs(studyUuid, nodeUuid, reportId, severityFilterList, messageFilter, isGlobalLogs) {
let url;
if (withParentNodes) {
if (isGlobalLogs) {
url = getStudyUrlWithNodeUuid(studyUuid, nodeUuid) + '/report/logs?';
} else {
url = getStudyUrlWithNodeUuid(studyUuid, nodeUuid) + '/report/' + reportId + '/logs?';
Expand Down

0 comments on commit c0de1bc

Please sign in to comment.