วันจันทร์ที่ 12 พฤศจิกายน พ.ศ. 2561

วิธีการใช้ Google Sheets เป็นระบบเฝ้าระวังเว็บไซต์ (Website Monitoring) จากภายนอกองค์กร

cr.https://sysadmin.psu.ac.th/2014/10/11/googleappsscript-googlesheet-websitemonitoring/
จาก “วิธีการใช้ Google Sheets เป็นฐานข้อมูล” ซึ่งได้กล่าวถึงพื้นฐานการพัฒนา Google Apps Script เพื่อใช้ต่อยอดความสามารถของ Google Sheets สามารถนำมาประยุกต์ใช้เพื่อเฝ้าระวังบริการเว็บไซต์จากภายนอกระบบเครือข่ายขององค์กรได้ (จาก Google Cloud Infrastructure เลยทีเดียว)

ขั้นตอนในการทำ
1.ในโปรเจค ProjectMyDB สร้างไฟล์ monitoring.gs ดังภาพ



2.ประกอบด้วย 3 ฟังก์ชัน คือ
function check_website(url) {  
  var response = UrlFetchApp.fetch(url, {muteHttpExceptions: true});
  return response.getResponseCode();
}

function doLog(timestamp, responseCode, timeDiff) {
  var ss = SpreadsheetApp.openByUrl('https://docs.google.com/a/psu.ac.th/spreadsheets/d/1HJmyqiBYC_AEATmdUWakLgHFyYGqSqeqSA8xEw-8o-c/edit');
  SpreadsheetApp.setActiveSpreadsheet(ss);
  SpreadsheetApp.setActiveSheet(ss.getSheetByName("Log"));
  var activeSheet=ss.getActiveSheet();
  activeSheet.appendRow([timestamp, responseCode, timeDiff]);
}

function getTime() {
  var startTime = new Date() ;
  var responseCode=check_website("http://www.psu.ac.th");
  var endTime = new Date() ;
  var timeDiff = endTime-startTime;  
  doLog(Utilities.formatDate(new Date(), "GMT+7", "yyyyMMdd-HHmmss") , responseCode , timeDiff);
}



















  • check_website ใช้ UrlFetchApp เพื่อ url ของเว็บไซต์ แล้วรีเทิร์นผล Response Code ของ HTTP Protocol กลับไป
  • doLog ใช้สำหรับเพิ่มค่า timestamp, responseCode และ timeDiff (เวลาในการตอบสนอง) ลงใน Sheet “Log” ใน Google Sheets ที่กำหนดไว้
  • getTime ใช้คำนวนเวลาตั้งแต่เริ่มต้น แล้วเรียกใช้ฟังก์ชั่น check_website และ จับเวลาที่สิ้นสุด จากนั้นคำนวนเป็นเวลาในการตอบสนอง (timeDiff) แล้ว เรียกฟังก์ขัน doLog เพื่อเขียนข้อมูลต่อไป










3.สร้าง Trigger ด้วยเมนู Resources > Current project’s triggers




4.เลือกฟังก์ชัน getTime กำหนดเป็น Time-driven ทำงานในหน่วยนาที (Minute timmer) และ ทำงานทุกๆ 5 นาที แล้วกดปุ่ม Save


5.ผลการทำงาน และการสร้าง Chart ประกอบ ทำให้สามารถเห็นแนวโน้มได้

จากตัวอย่างข้างต้น ทำให้เห็นว่า การใช้ Google Apps Script ร่วมกับ Google Sheet สามารถสร้างระบบเฝ้าระวังเว็บไซต์จากภายนอกองค์กรได้อย่างง่ายๆ และไม่มีค่าใช้จ่าย ทำให้เห็นภาพการใช้งานจากภายนอกได้เป็นอย่างดี

ไม่มีความคิดเห็น:

แสดงความคิดเห็น