JS
S
JavaScriptSimple NodeJS Snippet to check the connectivity over a string of endpoints. Please set the list of endpoints as an environment variable. export ENDPOINTS="https://coderecipes.org,https://www.coderecipes.org" Then, zip the file: zip -r archive_name.zip .
1"use strict";
2const async = require('async');
3const request = require('request');
4const timeout = 2500; // ms to wait for response
5// ignore invalid SSL certificate
6process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0";
7
8function httpGet(url, cb) {
9 const options = {
10 url: url,
11 timeout: timeout
12 };
13 request(options,
14 function (err, res, body) {
15 if (err) {
16 console.log('Error: ' + err, url);
17 cb(url);
18 }
19 else if (res.statusCode !== 200 && res.statusCode !== 405) {
20 console.log('Status Code: ' + res.statusCode, url);
21 cb(url);
22 }
23 else {
24 console.log('Status Code: 200', url);
25 cb(null);
26 }
27 }
28 );
29}
30
31exports.handler = (event, context, callback) => {
32 const urls = process.env.ENDPOINTS.split(",");
33 async.map(urls, httpGet, function (err, res){
34 if (err) {
35 console.log('returning error', err);
36 callback(err);
37 }
38 });
39};Created on 10/30/2017