Merge pull request #679 from bluewave-labs/fix/safe-data-access

Add safe data access to monitorDetails
This commit is contained in:
Alexander Holliday
2024-08-19 19:06:38 -07:00
committed by GitHub
2 changed files with 11 additions and 4 deletions

View File

@@ -16,7 +16,6 @@ import {
formatDurationRounded,
} from "../../../Utils/timeUtils";
import "./index.css";
import MonitorDetails60MinChart from "../../../Components/Charts/MonitorDetails60MinChart";
import Breadcrumbs from "../../../Components/Breadcrumbs";
import { logger } from "../../../Utils/Logger";
@@ -131,7 +130,7 @@ const DetailsPage = () => {
50,
true
);
setMonitor(res.data.data);
setMonitor(res?.data?.data ?? {});
} catch (error) {
logger.error(error);
navigate("/not-found", { replace: true });
@@ -144,11 +143,16 @@ const DetailsPage = () => {
useEffect(() => {
const fetchCertificate = async () => {
try {
const res = await networkService.getCertificateExpiry(
authToken,
monitorId
);
setCertificateExpiry(res.data.data.certificateDate);
setCertificateExpiry(res?.data?.data?.certificateDate ?? "N/A");
} catch (error) {
console.error(error);
}
};
fetchCertificate();
}, [authToken, monitorId]);

View File

@@ -172,6 +172,9 @@ const getMonitorStatsById = async (req) => {
// Get monitor
const monitor = await Monitor.findById(monitorId);
if (monitor === null || monitor === undefined) {
throw new Error(errorMessages.DB_FIND_MONTIOR_BY_ID(monitorId));
}
// Determine if this is a pagespeed monitor or an http/ping monitor
let model =
@@ -263,7 +266,7 @@ const getMonitorStatsById = async (req) => {
return monitorStats;
} catch (error) {
console.log(error);
throw error;
}
};