From 5ae8ccf30ed338157068b5f5b5632c3f821cade3 Mon Sep 17 00:00:00 2001 From: Brad Buchanan Date: Fri, 10 May 2019 13:05:52 -0700 Subject: [PATCH] Add a reachability check to api.jotform.com Adds an additional reachability check when embedding a jotform to https://api.jotform.com/favicon.ico. This domain is used when submitting forms, which has been failing for some of our teachers recently. Hoping this monitoring gives us more visibility into what's going wrong. --- apps/src/sites/studio/pages/jotformLoader.js | 50 ++++++++++++-------- 1 file changed, 31 insertions(+), 19 deletions(-) diff --git a/apps/src/sites/studio/pages/jotformLoader.js b/apps/src/sites/studio/pages/jotformLoader.js index 48c015e0eaa95..74c5b47ac8a29 100644 --- a/apps/src/sites/studio/pages/jotformLoader.js +++ b/apps/src/sites/studio/pages/jotformLoader.js @@ -14,30 +14,42 @@ function main(context) { // cdn.jotfor.ms https://cdn.jotfor.ms/images/calendar.png 817B checkReachability('https://cdn.jotfor.ms/images/calendar.png'), // www.jotform.com https://www.jotform.com/favicon.ico 887B - checkReachability('https://www.jotform.com/favicon.ico') + checkReachability('https://www.jotform.com/favicon.ico'), + // api.jotform.com https://api.jotform.com/favicon.ico 592B + checkReachability('https://api.jotform.com/favicon.ico') // Not using these yet, they're likely to fall under the same policy as www.jotform.com // events.jotform.com // files.jotform.com // form.jotform.com - ]).then(([jotFormFrameLoadedMs, cdnjotformsMs, wwwjotformcomMs]) => { - if (jotFormFrameLoadedMs === false) { - // Load failed if we specifically got 'false' - logToCloud.addPageAction(logToCloud.PageAction.JotFormLoadFailed, { - route: `GET ${context.location.pathname}`, - reachedCdnjotforms: false !== cdnjotformsMs, - reachedWwwjotformcom: false !== wwwjotformcomMs, - cdnjotformsMs, - wwwjotformcomMs - }); - } else { - logToCloud.addPageAction(logToCloud.PageAction.JotFormFrameLoaded, { - route: `GET ${context.location.pathname}`, - jotFormFrameLoadedMs, - cdnjotformsMs, - wwwjotformcomMs - }); + ]).then( + ([ + jotFormFrameLoadedMs, + cdnjotformsMs, + wwwjotformcomMs, + apijotformcomMs + ]) => { + if (jotFormFrameLoadedMs === false) { + // Load failed if we specifically got 'false' + logToCloud.addPageAction(logToCloud.PageAction.JotFormLoadFailed, { + route: `GET ${context.location.pathname}`, + reachedCdnjotforms: false !== cdnjotformsMs, + reachedWwwjotformcom: false !== wwwjotformcomMs, + reachedApijotformcom: false !== apijotformcomMs, + cdnjotformsMs, + wwwjotformcomMs, + apijotformcomMs + }); + } else { + logToCloud.addPageAction(logToCloud.PageAction.JotFormFrameLoaded, { + route: `GET ${context.location.pathname}`, + jotFormFrameLoadedMs, + cdnjotformsMs, + wwwjotformcomMs, + apijotformcomMs + }); + } } - }); + ); } /**