|
@@ -14,22 +14,29 @@ export default async function handler(req, res) {
|
|
|
error: "No ping URL given",
|
|
|
});
|
|
|
}
|
|
|
-
|
|
|
- let startTime = performance.now();
|
|
|
- let [status] = await httpProxy(pingURL, {
|
|
|
- method: "HEAD"
|
|
|
- });
|
|
|
- let endTime = performance.now();
|
|
|
-
|
|
|
- if (status > 403) {
|
|
|
- // try one more time as a GET in case HEAD is rejected for whatever reason
|
|
|
- startTime = performance.now();
|
|
|
- [status] = await httpProxy(pingURL);
|
|
|
- endTime = performance.now();
|
|
|
- }
|
|
|
|
|
|
- return res.status(200).json({
|
|
|
- status,
|
|
|
- latency: endTime - startTime
|
|
|
- });
|
|
|
+ try {
|
|
|
+ let startTime = performance.now();
|
|
|
+ let [status] = await httpProxy(pingURL, {
|
|
|
+ method: "HEAD"
|
|
|
+ });
|
|
|
+ let endTime = performance.now();
|
|
|
+
|
|
|
+ if (status > 403) {
|
|
|
+ // try one more time as a GET in case HEAD is rejected for whatever reason
|
|
|
+ startTime = performance.now();
|
|
|
+ [status] = await httpProxy(pingURL);
|
|
|
+ endTime = performance.now();
|
|
|
+ }
|
|
|
+
|
|
|
+ return res.status(200).json({
|
|
|
+ status,
|
|
|
+ latency: endTime - startTime
|
|
|
+ });
|
|
|
+ } catch (e) {
|
|
|
+ logger.debug("Error attempting ping: %s", JSON.stringify(e));
|
|
|
+ return res.status(400).send({
|
|
|
+ error: 'Error attempting ping, see logs.',
|
|
|
+ });
|
|
|
+ }
|
|
|
}
|