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