Create function check status for other system
This commit is contained in:
		
							parent
							
								
									9da1308762
								
							
						
					
					
						commit
						5f13f63532
					
				| 
						 | 
				
			
			@ -3,7 +3,7 @@ const crypto = require("crypto");
 | 
			
		|||
const moment = require("moment");
 | 
			
		||||
const zulip = require("zulip-js");
 | 
			
		||||
const { exec } = require("child_process");
 | 
			
		||||
const fs = require('fs');
 | 
			
		||||
const fs = require("fs");
 | 
			
		||||
 | 
			
		||||
const config = {
 | 
			
		||||
  username: "networktool-bot@zulip.ipsupply.com.au",
 | 
			
		||||
| 
						 | 
				
			
			@ -29,7 +29,7 @@ const checkMultipleRequest = async () => {
 | 
			
		|||
    let content = "||Server| System time| Status \n|---|:---|:---|:---:\n";
 | 
			
		||||
    // Tạo tiêu đề
 | 
			
		||||
 | 
			
		||||
    let allResponse = ""
 | 
			
		||||
    let allResponse = "";
 | 
			
		||||
    const requests = [
 | 
			
		||||
      //Ebay Systems
 | 
			
		||||
      {
 | 
			
		||||
| 
						 | 
				
			
			@ -723,6 +723,7 @@ const checkMultipleRequest = async () => {
 | 
			
		|||
        name: "Tracking CouriersPlease",
 | 
			
		||||
        group: "ERP Systems",
 | 
			
		||||
      },
 | 
			
		||||
      //Other system
 | 
			
		||||
      {
 | 
			
		||||
        url: "https://int.ipsupply.com.au/api/transferPostData",
 | 
			
		||||
        method: "POST",
 | 
			
		||||
| 
						 | 
				
			
			@ -747,6 +748,20 @@ const checkMultipleRequest = async () => {
 | 
			
		|||
        name: "Perthmint",
 | 
			
		||||
        group: "Other Systems",
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        url: "https://disti.danielvu.com/api/fileAutoImportLog",
 | 
			
		||||
        method: "POST",
 | 
			
		||||
        headers: {
 | 
			
		||||
          "Content-Type": "application/json",
 | 
			
		||||
          Accept: "application/json",
 | 
			
		||||
          loginid: null,
 | 
			
		||||
          Code: code,
 | 
			
		||||
          AccessToken: accessToken,
 | 
			
		||||
        },
 | 
			
		||||
        data: {},
 | 
			
		||||
        name: "Auto import Disti",
 | 
			
		||||
        group: "Other Systems",
 | 
			
		||||
      },
 | 
			
		||||
    ];
 | 
			
		||||
 | 
			
		||||
    const logicCheck = async (req, response) => {
 | 
			
		||||
| 
						 | 
				
			
			@ -872,7 +887,7 @@ const checkMultipleRequest = async () => {
 | 
			
		|||
          }
 | 
			
		||||
        });
 | 
			
		||||
      });
 | 
			
		||||
    }
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    const promises = requests.map(async (req, index) => {
 | 
			
		||||
      if (req.method === "POST") {
 | 
			
		||||
| 
						 | 
				
			
			@ -881,12 +896,47 @@ const checkMultipleRequest = async () => {
 | 
			
		|||
            headers: req.headers,
 | 
			
		||||
          })
 | 
			
		||||
          .then((response) => {
 | 
			
		||||
            allResponse+=JSON.stringify(req.name+"\n"+response.data)
 | 
			
		||||
            allResponse += JSON.stringify(req.name + "\n" + response.data);
 | 
			
		||||
            console.log(response.data);
 | 
			
		||||
            // Xử lý response ở đây
 | 
			
		||||
            // console.log("Response:", response.data.length);
 | 
			
		||||
            // console.log("Status:", response.status);
 | 
			
		||||
 | 
			
		||||
            logicCheck(req, response);
 | 
			
		||||
            if (req.name !== "Auto import Disti") {
 | 
			
		||||
              logicCheck(req, response);
 | 
			
		||||
            } else {
 | 
			
		||||
              console.log(response.data?.data?.length);
 | 
			
		||||
              if (response.data?.data?.length > 0) {
 | 
			
		||||
                response.data?.data?.map((u) => {
 | 
			
		||||
                  let name = req.name + " from " + u.data_name;
 | 
			
		||||
                  if (u.status === true) {
 | 
			
		||||
                    report.push({
 | 
			
		||||
                      group: req.group,
 | 
			
		||||
                      name: name,
 | 
			
		||||
                      status: ":check:",
 | 
			
		||||
                      code: "good",
 | 
			
		||||
                      lengthOrData: response.data?.data,
 | 
			
		||||
                    });
 | 
			
		||||
                  } else {
 | 
			
		||||
                    report.push({
 | 
			
		||||
                      group: req.group,
 | 
			
		||||
                      name: name,
 | 
			
		||||
                      status: ":red_circle:",
 | 
			
		||||
                      code: "fail",
 | 
			
		||||
                      lengthOrData: response.data?.data,
 | 
			
		||||
                    });
 | 
			
		||||
                  }
 | 
			
		||||
                });
 | 
			
		||||
              } else {
 | 
			
		||||
                report.push({
 | 
			
		||||
                  group: req.group,
 | 
			
		||||
                  name: req.name,
 | 
			
		||||
                  status: ":red_circle:",
 | 
			
		||||
                  code: "fail",
 | 
			
		||||
                  lengthOrData: response.data?.data,
 | 
			
		||||
                });
 | 
			
		||||
              }
 | 
			
		||||
            }
 | 
			
		||||
          })
 | 
			
		||||
          .catch((error) => {
 | 
			
		||||
            // Xử lý lỗi ở đây
 | 
			
		||||
| 
						 | 
				
			
			@ -907,7 +957,7 @@ const checkMultipleRequest = async () => {
 | 
			
		|||
            headers: req.headers,
 | 
			
		||||
          })
 | 
			
		||||
          .then((response) => {
 | 
			
		||||
            allResponse+=JSON.stringify(req.name+"\n"+response.data)
 | 
			
		||||
            allResponse += JSON.stringify(req.name + "\n" + response.data);
 | 
			
		||||
            // Xử lý response ở đây
 | 
			
		||||
            // console.log("Response:", response.data.length);
 | 
			
		||||
            // console.log("Status:", response.status);
 | 
			
		||||
| 
						 | 
				
			
			@ -927,12 +977,11 @@ const checkMultipleRequest = async () => {
 | 
			
		|||
      }
 | 
			
		||||
 | 
			
		||||
      if (req.method === "SSH") {
 | 
			
		||||
 | 
			
		||||
        const stdout = await runExec(req.url);
 | 
			
		||||
        if (stdout !== "") {
 | 
			
		||||
          allResponse+=JSON.stringify(req.name+"\n"+stdout)
 | 
			
		||||
          if(req.name==="Perthmint"){
 | 
			
		||||
            if((stdout.toString().split("true").length-1)>1){
 | 
			
		||||
          allResponse += JSON.stringify(req.name + "\n" + stdout);
 | 
			
		||||
          if (req.name === "Perthmint") {
 | 
			
		||||
            if (stdout.toString().split("true").length - 1 > 1) {
 | 
			
		||||
              report.push({
 | 
			
		||||
                group: req.group,
 | 
			
		||||
                name: req.name,
 | 
			
		||||
| 
						 | 
				
			
			@ -940,7 +989,7 @@ const checkMultipleRequest = async () => {
 | 
			
		|||
                code: "good",
 | 
			
		||||
                lengthOrData: stdout,
 | 
			
		||||
              });
 | 
			
		||||
            }else{
 | 
			
		||||
            } else {
 | 
			
		||||
              report.push({
 | 
			
		||||
                group: req.group,
 | 
			
		||||
                name: req.name,
 | 
			
		||||
| 
						 | 
				
			
			@ -949,11 +998,10 @@ const checkMultipleRequest = async () => {
 | 
			
		|||
                lengthOrData: stdout,
 | 
			
		||||
              });
 | 
			
		||||
            }
 | 
			
		||||
            
 | 
			
		||||
          }
 | 
			
		||||
        } else {
 | 
			
		||||
          console.log(stderr)
 | 
			
		||||
          allResponse+=JSON.stringify(req.name+"\n"+stderr)
 | 
			
		||||
          console.log(stderr);
 | 
			
		||||
          allResponse += JSON.stringify(req.name + "\n" + stderr);
 | 
			
		||||
          report.push({
 | 
			
		||||
            group: req.group,
 | 
			
		||||
            name: req.name,
 | 
			
		||||
| 
						 | 
				
			
			@ -1002,9 +1050,11 @@ const checkMultipleRequest = async () => {
 | 
			
		|||
 | 
			
		||||
    client.messages.send(params);
 | 
			
		||||
    // client.messages.send(params1);
 | 
			
		||||
    allResponse += report.sort((a, b) => a.group.localeCompare(b.group)).join("\n")
 | 
			
		||||
    allResponse += report
 | 
			
		||||
      .sort((a, b) => a.group.localeCompare(b.group))
 | 
			
		||||
      .join("\n");
 | 
			
		||||
 | 
			
		||||
    fs.writeFileSync("/home/logs/logSystems.txt", allResponse)
 | 
			
		||||
    fs.writeFileSync("/home/logs/logSystems.txt", allResponse);
 | 
			
		||||
    console.log(report.sort((a, b) => a.group.localeCompare(b.group)));
 | 
			
		||||
  } catch (error) {
 | 
			
		||||
    console.log(error);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue