CEC-279 Add logger (#62)

* CEC-279 Add logger

* Error log 500 status requests
This commit is contained in:
John Wu
2021-06-24 10:17:34 -07:00
committed by GitHub
parent f4e4261d01
commit 8bb245a417
17 changed files with 159 additions and 100 deletions

View File

@@ -12,6 +12,7 @@ import useStyles from "../../useStyles";
import { tsLocalDateTimeString } from "../../../utils/dates";
import SearchField from "../../Controls/SearchField";
import CarSelectionTable from "../../Cars/CarSelectionTable";
import { logger } from "../../../services/monitoring";
const MainForm = () => {
const { packageid } = useParams();
@@ -41,14 +42,18 @@ const MainForm = () => {
};
const handleSelect = (event, key) => {
let newSelected;
if (event.target.checked) {
newSelected = [...selected];
newSelected.push(key);
} else {
newSelected = selected.filter((vin) => vin !== key);
try {
let newSelected;
if (event.target.checked) {
newSelected = [...selected];
newSelected.push(key);
} else {
newSelected = selected.filter((vin) => vin !== key);
}
setSelected(newSelected);
} catch (e) {
logger.warn(e.stack);
}
setSelected(newSelected);
};
const onSubmit = async (event) => {
@@ -65,13 +70,16 @@ const MainForm = () => {
setRedirect(`/carupdate-status/${packageid}`);
} catch (e) {
setMessage(e.message);
logger.warn(e.stack);
}
};
const getData = async () => {
try {
getPackages({ id: parseInt(packageid) }, token);
} catch (e) {
setMessage(e.message);
logger.warn(e.stack);
}
};
@@ -82,7 +90,7 @@ const MainForm = () => {
useEffect(() => {
setTitle(`Deploy ${packageName} ${version}`);
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [packageName, version]);
useEffect(() => {

View File

@@ -20,6 +20,7 @@ import { useUserContext } from "../../Contexts/UserContext";
import { useStatusContext } from "../../Contexts/StatusContext";
import useStyles from "../../useStyles";
import { LocalDateTimeString } from "../../../utils/dates";
import { logger } from "../../../services/monitoring";
const MainForm = () => {
const { packageid } = useParams();
@@ -43,36 +44,41 @@ const MainForm = () => {
} = useUserContext();
useEffect(() => {
try {
getPackages({ id: packageid }, token);
} catch (e) {
setMessage(e.message);
}
// eslint-disable-next-line
(async () => {
try {
await getPackages({ id: packageid }, token);
} catch (e) {
setMessage(e.message);
logger.warn(e.stack);
}
})();
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [token]);
useEffect(() => {
if (!packages || packages.length === 0) return;
setTitle(`Package ${packages[0].package_name} ${packages[0].version}`);
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [packages]);
useEffect(() => {
try {
stopMonitor();
getCarUpdates(
{
packageid,
limit: pageSize,
offset: pageSize * pageIndex,
},
token
);
} catch (e) {
setMessage(e.message);
}
// eslint-disable-next-line
(async () => {
try {
stopMonitor();
await getCarUpdates(
{
packageid,
limit: pageSize,
offset: pageSize * pageIndex,
},
token
);
} catch (e) {
setMessage(e.message);
logger.warn(e.stack);
}
})();
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [pageIndex, pageSize, token]);
useEffect(() => {
@@ -81,11 +87,12 @@ const MainForm = () => {
startMonitor(token);
} catch (e) {
setMessage(e.message);
logger.warn(e.stack);
}
return () => {
stopMonitor();
};
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [carUpdates]);
const handleChangePageIndex = (event, newIndex) => {

View File

@@ -8,6 +8,7 @@ import {
import { useStatusContext } from "../../Contexts/StatusContext";
import { useUserContext } from "../../Contexts/UserContext";
import { Button, TextField } from "@material-ui/core";
import { logger } from "../../../services/monitoring";
const MainForm = () => {
const { addVehicle, busy } = useVehicleContext();
@@ -25,7 +26,7 @@ const MainForm = () => {
useEffect(() => {
setTitle("Add Vehicle");
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, []);
const onSubmit = async (event) => {
try {
@@ -44,6 +45,7 @@ const MainForm = () => {
vinEl.current.value = "";
} catch (e) {
setMessage(e.message);
logger.warn(e.stack);
}
};

View File

@@ -40,7 +40,7 @@ const Control = (props) => {
await getYears(token);
} catch (e) {}
})();
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [token]);
useEffect(() => {
@@ -56,14 +56,14 @@ const Control = (props) => {
useEffect(() => {
if (model === null || year === -1) return;
getVehicles({ model, year, trim }, token);
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [model, year, trim]);
useEffect(() => {
if (!props.onSelection) return;
const vins = vehicles.map((item) => item.vin);
props.onSelection(vins);
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [vehicles]);
return (

View File

@@ -16,6 +16,7 @@ import { useVehicleContext } from "../../Contexts/VehicleContext";
import { useStatusContext } from "../../Contexts/StatusContext";
import { LocalDateTimeString } from "../../../utils/dates";
import TableHeaderSortable from "../../Table/HeaderSortable";
import { logger } from "../../../services/monitoring";
const tableColumns = [
{
@@ -100,12 +101,15 @@ const CarSelectionTable = (props) => {
offset: pageSize * pageIndex,
order: `${orderBy} ${order}`,
};
try {
getVehicles(Object.assign(options, search), token);
} catch (e) {
setMessage(e.message);
}
// eslint-disable-next-line
(async () => {
try {
await getVehicles(Object.assign(options, search), token);
} catch (e) {
setMessage(e.message);
logger.warn(e.stack);
}
})();
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [pageIndex, pageSize, orderBy, order, search, token]);
return (

View File

@@ -20,6 +20,7 @@ import useStyles from "../../useStyles";
import { LocalDateTimeString } from "../../../utils/dates";
import TableHeaderSortable from "../../Table/HeaderSortable";
import SearchField from "../../Controls/SearchField";
import { logger } from "../../../services/monitoring";
const tableColumns = [
{
@@ -78,24 +79,27 @@ const MainForm = () => {
useEffect(() => {
setTitle("Vehicles");
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, []);
useEffect(() => {
try {
getVehicles(
{
limit: pageSize,
offset: pageSize * pageIndex,
order: `${orderBy} ${order}`,
search,
},
token
);
} catch (e) {
setMessage(e.message);
}
// eslint-disable-next-line
(async () => {
try {
await getVehicles(
{
limit: pageSize,
offset: pageSize * pageIndex,
order: `${orderBy} ${order}`,
search,
},
token
);
} catch (e) {
setMessage(e.message);
logger.warn(e.stack);
}
})();
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [pageIndex, pageSize, token, orderBy, order, search]);
const handleChangePageIndex = (event, newIndex) => {

View File

@@ -8,6 +8,7 @@ import commands from "../../../services/commands";
import useStyles from "../../useStyles";
import { useUserContext } from "../../Contexts/UserContext";
import { useStatusContext } from "../../Contexts/StatusContext";
import { logger } from "../../../services/monitoring";
const SendCommand = ({ vins }) => {
const classes = useStyles();
@@ -50,6 +51,7 @@ const SendCommand = ({ vins }) => {
}
} catch (e) {
setMessage(e.message);
logger.error(e.stack);
}
};
@@ -69,7 +71,7 @@ const SendCommand = ({ vins }) => {
useEffect(() => {
if (!commands || commands.length === 0) return;
selectCommand(commands[0].value);
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, []);
return (

View File

@@ -8,6 +8,7 @@ import useStyles from "../../useStyles";
import SendCommand from "../SendCommand";
import SearchField from "../../Controls/SearchField";
import CarSelectionTable from "../CarSelectionTable";
import { logger } from "../../../services/monitoring";
const MainForm = () => {
const classes = useStyles();
@@ -30,19 +31,23 @@ const MainForm = () => {
};
const handleSelect = (event, key) => {
let newSelected;
if (event.target.checked) {
newSelected = [...selected];
newSelected.push(key);
} else {
newSelected = selected.filter((vin) => vin !== key);
try {
let newSelected;
if (event.target.checked) {
newSelected = [...selected];
newSelected.push(key);
} else {
newSelected = selected.filter((vin) => vin !== key);
}
setSelected(newSelected);
} catch (e) {
logger.warn(e.stack);
}
setSelected(newSelected);
};
useEffect(() => {
setTitle("Send Command");
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, []);
return (

View File

@@ -19,6 +19,7 @@ import { useStatusContext } from "../../Contexts/StatusContext";
import useStyles from "../../useStyles";
import { LocalDateTimeString } from "../../../utils/dates";
import TableHeaderSortable from "../../Table/HeaderSortable";
import { logger } from "../../../services/monitoring";
const tableColumns = [
{
@@ -60,23 +61,27 @@ const MainForm = () => {
useEffect(() => {
setTitle(`Vehicle ${vin} Details`);
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [vin]);
useEffect(() => {
try {
getCarUpdates(
{
vin,
limit: pageSize,
offset: pageSize * pageIndex,
order: `${orderBy} ${order}`,
},
token
);
} catch (e) {
setMessage(e.message);
}
// eslint-disable-next-line
(async () => {
try {
await getCarUpdates(
{
vin,
limit: pageSize,
offset: pageSize * pageIndex,
order: `${orderBy} ${order}`,
},
token
);
} catch (e) {
setMessage(e.message);
logger.warn(e.stack);
}
})();
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [pageIndex, pageSize, token, orderBy, order]);
const handleChangePageIndex = (event, newIndex) => {
@@ -89,15 +94,19 @@ const MainForm = () => {
};
const handleSort = (event, property) => {
if (property === orderBy) {
if (order === "asc") {
setOrder("desc");
try {
if (property === orderBy) {
if (order === "asc") {
setOrder("desc");
} else {
setOrder("asc");
}
} else {
setOrderBy(property);
setOrder("asc");
}
} else {
setOrderBy(property);
setOrder("asc");
} catch (e) {
logger.warn(e.stack);
}
};

View File

@@ -41,7 +41,7 @@ export default function CarStatusModal(props) {
setMessage(e.message);
}
})();
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [props.vin]);
return (
<div>

View File

@@ -12,7 +12,7 @@ const Dashboard = () => {
useEffect(() => {
setTitle("Dashboard");
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, []);
return (

View File

@@ -27,7 +27,7 @@ const Home = () => {
useEffect(() => {
setTitle("");
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, []);
return (

View File

@@ -1,6 +1,8 @@
import React, { useEffect, useRef, useState } from "react";
import { Redirect } from "react-router";
import { Button, TextField } from "@material-ui/core";
import { DropzoneArea } from "material-ui-dropzone";
import { useUserContext } from "../../Contexts/UserContext";
import { useStatusContext } from "../../Contexts/StatusContext";
import {
@@ -9,7 +11,7 @@ import {
} from "../../Contexts/FileUploadContext";
import ModalProgressBar from "../../ModalProgressBar";
import useStyles from "../../useStyles";
import { Redirect } from "react-router";
import { logger } from "../../../services/monitoring";
const FileUploadZone = ({ classes, token }) => {
const { setFiles } = useFileUploadContext();
@@ -52,7 +54,7 @@ const MainForm = () => {
useEffect(() => {
setTitle("Create Update Package");
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, []);
const onSubmit = async (event) => {
@@ -76,6 +78,7 @@ const MainForm = () => {
setRedirect(`/carupdate-deploy/${result.id}`);
} catch (e) {
setMessage(e.message);
logger.warn(e.stack);
}
};

View File

@@ -10,6 +10,7 @@ import { useUserContext } from "../../Contexts/UserContext";
import { useStatusContext } from "../../Contexts/StatusContext";
import useStyles from "../../useStyles";
import { tsLocalDateTimeString } from "../../../utils/dates";
import { logger } from "../../../services/monitoring";
const MainForm = () => {
const { id } = useParams();
@@ -42,6 +43,7 @@ const MainForm = () => {
setMessage(`Updated ${packageName} ${version}`);
} catch (e) {
setMessage(e.message);
logger.warn(e.stack);
}
};
const getData = async () => {
@@ -49,6 +51,7 @@ const MainForm = () => {
getPackages({ id: parseInt(id) }, token);
} catch (e) {
setMessage(e.message);
logger.warn(e.stack);
}
};
const handleChange = (event) => {
@@ -70,7 +73,7 @@ const MainForm = () => {
useEffect(() => {
setTitle(`Edit Update Package ${id}`);
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, []);
useEffect(() => {

View File

@@ -24,6 +24,7 @@ import { LocalDateTimeString } from "../../../utils/dates";
import { Roles, hasRole } from "../../../utils/roles";
import TableHeaderSortable from "../../Table/HeaderSortable";
import SearchField from "../../Controls/SearchField";
import { logger } from "../../../services/monitoring";
const tableColumns = [
{
@@ -67,7 +68,7 @@ const UpdatePackagesList = () => {
useEffect(() => {
setTitle("Deploy Packages");
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, []);
useEffect(() => {
@@ -80,7 +81,7 @@ const UpdatePackagesList = () => {
},
token
);
// eslint-disable-next-line
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [pageIndex, pageSize, token, orderBy, order, search]);
const handleChangePageIndex = (event, newIndex) => {
@@ -114,6 +115,7 @@ const UpdatePackagesList = () => {
await deletePackage(parseInt(package_id), token);
} catch (e) {
setMessage(e.message);
logger.warn(e.stack);
}
};