update format message zulip

This commit is contained in:
joseph le 2023-09-18 10:38:12 +07:00
parent 613eb22614
commit 425ca91172
8 changed files with 149 additions and 2139 deletions

View File

@ -1,2 +0,0 @@
sdfgsdfg
sdf

View File

@ -0,0 +1,7 @@
adfasf
anfasll ak shflks as klhfalk la EHWIC- fsjl
123 PVDM3- hui 800G2-POE-2
sdhgksd sjk hk error
abc 123 fail
abc 123 fail
sdhgksd sjk hk error

View File

@ -1,15 +0,0 @@
WS-X68
WS-X68
WS-X68
WS-X68
WS-X68
SM-
SM-
SM-
WS-X68
WS-X68
WS-X68
yellow
SM-
WS-X68
fksdfk trace ak

View File

@ -1,236 +0,0 @@
set_radius_extended_configsdf
set_radius_extended_configsdfsdf
fsdsdfsf
xe xich low
set_radius_extended_configsdfsdfdfhfg
fghgf
fghgfdfjgdfkjgerr
dfhkhjh
cong hoa xa hoi chu nghia
djgkdbsk
dfhjđhd
error
con co be begkklg
dhmkfhd
err
dfkbdfnlkbndflbd
trace
err
fault
err
trace
set_radius_extended_configsdfsdfdfhfg err
set_radius_extended_configsdf
set_radius_extended_configsdfsdf
fsdsdfsf
xe xich low
set_radius_extended_configsdfsdfdfhfg
fghgf
fghgfdfjgdfkjgerr
dfhkhjh
cong hoa xa hoi chu nghia
djgkdbsk
dfhjđhd
error
con co be begkklg
dhmkfhd
err
dfkbdfnlkbndflbd
trace
err
fault
err
trace
set_radius_extended_configsdfsdfdfhfg err
set_radius_extended_configsdf
set_radius_extended_configsdfsdf
fsdsdfsf
xe xich low
set_radius_extended_configsdfsdfdfhfg
fghgf
fghgfdfjgdfkjgerr
dfhkhjh
cong hoa xa hoi chu nghia
djgkdbsk
dfhjđhd
error
con co be begkklg
dhmkfhd
err
dfkbdfnlkbndflbd
trace
err
fault
err
trace
set_radius_extended_configsdfsdfdfhfg err
set_radius_extended_configsdf
set_radius_extended_configsdfsdf
fsdsdfsf
xe xich low
set_radius_extended_configsdfsdfdfhfg
fghgf
fghgfdfjgdfkjgerr
dfhkhjh
cong hoa xa hoi chu nghia
djgkdbsk
dfhjđhd
error
con co be begkklg
dhmkfhd
err
dfkbdfnlkbndflbd
trace
err
fault
err
trace
set_radius_extended_configsdfsdfdfhfg err
set_radius_extended_configsdf
set_radius_extended_configsdfsdf
fsdsdfsf
xe xich low
set_radius_extended_configsdfsdfdfhfg
fghgf
fghgfdfjgdfkjgerr
dfhkhjh
cong hoa xa hoi chu nghia
djgkdbsk
dfhjđhd
error
con co be begkklg
dhmkfhd
err
dfkbdfnlkbndflbd
trace
err
fault
err
trace
set_radius_extended_configsdfsdfdfhfg err
set_radius_extended_configsdf
set_radius_extended_configsdfsdf
fsdsdfsf
xe xich low
set_radius_extended_configsdfsdfdfhfg
fghgf
fghgfdfjgdfkjgerr
dfhkhjh
cong hoa xa hoi chu nghia
djgkdbsk
dfhjđhd
error
con co be begkklg
dhmkfhd
err
dfkbdfnlkbndflbd
trace
err
fault
err
trace
set_radius_extended_configsdfsdfdfhfg err
set_radius_extended_configsdf
set_radius_extended_configsdfsdf
fsdsdfsf
xe xich low
set_radius_extended_configsdfsdfdfhfg
fghgf
fghgfdfjgdfkjgerr
dfhkhjh
cong hoa xa hoi chu nghia
djgkdbsk
dfhjđhd
error
con co be begkklg
dhmkfhd
err
dfkbdfnlkbndflbd
trace
err
fault
err
trace
set_radius_extended_configsdfsdfdfhfg err
set_radius_extended_configsdf
set_radius_extended_configsdfsdf
fsdsdfsf
xe xich low
set_radius_extended_configsdfsdfdfhfg
fghgf
fghgfdfjgdfkjgerr
dfhkhjh
cong hoa xa hoi chu nghia
djgkdbsk
dfhjđhd
error
con co be begkklg
dhmkfhd
err
dfkbdfnlkbndflbd
trace
err
fault
err
trace
set_radius_extended_configsdfsdfdfhfg err
set_radius_extended_configsdf
set_radius_extended_configsdfsdf
fsdsdfsf
xe xich low
set_radius_extended_configsdfsdfdfhfg
fghgf
fghgfdfjgdfkjgerr
dfhkhjh
cong hoa xa hoi chu nghia
djgkdbsk
dfhjđhd
error
con co be begkklg
dhmkfhd
err
dfkbdfnlkbndflbd
trace
err
fault
err
trace
set_radius_extended_configsdfsdfdfhfg err
set_radius_extended_configsdf
set_radius_extended_configsdfsdf
fsdsdfsf
xe xich low
set_radius_extended_configsdfsdfdfhfg
fghgf
fghgfdfjgdfkjgerr
dfhkhjh
cong hoa xa hoi chu nghia
djgkdbsk
dfhjđhd
error
con co be begkklg
dhmkfhd
err
dfkbdfnlkbndflbd
trace
err
fault
err
trace
set_radius_extended_configsdfsdfdfhfg err

File diff suppressed because it is too large Load Diff

View File

@ -79,7 +79,7 @@ export async function runtimeCheckLogs(folderPath) {
const filePath = `${folderPath}/${fileName}`; const filePath = `${folderPath}/${fileName}`;
const scan = fs.watchFile( const scan = fs.watchFile(
filePath, filePath,
{ interval: 10000 }, { interval: 300000 },
async (eventType) => { async (eventType) => {
//check special item, extra RAM, error in log //check special item, extra RAM, error in log
let lines = []; let lines = [];
@ -94,11 +94,10 @@ export async function runtimeCheckLogs(folderPath) {
); );
let lastLine = Math.max(...logsDetect[0].map((obj) => obj.line)); let lastLine = Math.max(...logsDetect[0].map((obj) => obj.line));
let content = await fs let contentFile = await fs
.readFileSync(filePath) .readFileSync(filePath)
.toString() .toString()
?.split("\n") ?.split("\n");
.slice();
let allValue = await KeyValue.all(); let allValue = await KeyValue.all();
let listKeyValues = allValue.filter( let listKeyValues = allValue.filter(
@ -115,7 +114,7 @@ export async function runtimeCheckLogs(folderPath) {
.filter((i) => i.$original.key === "MODEL_SPECIAL") .filter((i) => i.$original.key === "MODEL_SPECIAL")
.map((obj) => obj.$original.value); .map((obj) => obj.$original.value);
content.map((line, index) => { contentFile.map((line, index) => {
listKeyValues listKeyValues
.map((obj) => obj.$original.value) .map((obj) => obj.$original.value)
.map(async (value) => { .map(async (value) => {
@ -176,72 +175,78 @@ export async function runtimeCheckLogs(folderPath) {
"select * from log_reports where id_file = " + "select * from log_reports where id_file = " +
fileDetect?.id_ldf fileDetect?.id_ldf
); );
const timeImage = Date.now() // const timeImage = Date.now()
await screenShot(fileName, timeImage); // await screenShot(fileName, timeImage);
setTimeout(async() => { // setTimeout(async() => {
const uriImage = await uploadFileToZulip(timeImage); // const uriImage = await uploadFileToZulip(timeImage);
let listReport = await getListLineByItem( let listReport = await getListLineByItem(
logsDetect[0].filter((l) => l.line > lastLine) logsDetect[0].filter((l) => l.line > lastLine)
); );
let content = let content =
"| |Last updated at | Item/error | Line | Report \n|---|:---:|:---|:---|:-----------:\n"; "| |Last updated at | Item/error | Line | Report \n|---|:---:|:---|:---|:-----------:\n";
let spoiler = ""; let spoiler = "";
listReport.map((log, index) => { let issueFound = "";
let item = listExtraItem.includes(log.detected_content) listReport.map((log, index) => {
? ":medal: **" + log.detected_content + "**" let item = listExtraItem.includes(log.detected_content)
: ":small_orange_diamond: " + log.detected_content; ? ":medal: **" + log.detected_content + "**"
content = : ":small_orange_diamond: " + log.detected_content;
content +
"|" + log.line?.map((line)=>{
(index + 1) + issueFound =
"|**" + issueFound +
moment(log.created_at).format("HH:mm - DD/MM") + "\n" +
"**|" + line +
item + "$" +
"|" + contentFile[line-1]?.replace(log.detected_content, "`" + log.detected_content + "`")
log.line + })
"|[View](https://logs.danielvu.com/logs/" + content =
fileName + content +
"#" + "|" +
log.line + (index + 1) +
")\n"; "|**" +
}); moment(log.created_at).format("HH:mm - DD/MM") +
// } "**|" +
// setTimeout(() => { item +
sendMessToZulip( "|" +
"stream", log.line +
"Result test - auto.nswteam.net", "|[View](https://logs.danielvu.com/logs/" +
"Log Alert", fileName +
"------------\n\n:warning: :warning: **" + "#" +
fileName + log.line +
"**\n\n" + ")\n";
content + });
"\n\n" + // }
spoiler // setTimeout(() => {
+ sendMessToZulip(
"\n\n[image](" + "stream",
uriImage + "Result test - auto.nswteam.net",
")\n" "Log Alert",
); "------------\n\n:warning: :warning: **" +
fileName +
sendMessToZulip( "**\n\n" +
"stream", content +
"AUS_VN_Test", "\n\n" +
"Test Log Alerts", spoiler +
"------------\n\n:warning: :warning: **" + "\n\n*Issue found:*\n" + issueFound
fileName + // uriImage +
"**\n\n" + // ")\n"
content + );
"\n\n" +
spoiler sendMessToZulip(
+ "stream",
"\n\n[image](" + "AUS_VN_Test",
uriImage + "Test Log Alerts",
")\n" "------------\n\n:warning: :warning: **" +
); fileName +
}, 10000); "**\n\n" +
content +
"\n\n" +
spoiler +
"\n\n*Issue found:*\n" + issueFound
);
// }, 10000);
// }, 3000); // }, 3000);
} }
}, 3000); }, 3000);

View File

@ -1,73 +1,73 @@
const puppeteer = require("puppeteer"); // const puppeteer = require("puppeteer");
(async () => { // (async () => {
// Launch a headless browser // // Launch a headless browser
const browser = await puppeteer.launch({ // const browser = await puppeteer.launch({
headless: true, // headless: true,
args: ["--no-sandbox"], // args: ["--no-sandbox"],
}); // });
// Open a new page // // Open a new page
const page = await browser.newPage(); // const page = await browser.newPage();
await page.goto( // await page.goto(
"https://logs.danielvu.com/screenShot/20230913-TEST01-Session.Port4-6-172.16.20.7.log" // "https://logs.danielvu.com/screenShot/20230913-TEST01-Session.Port4-6-172.16.20.7.log"
); // );
const bodyHandle = await page.$("body"); // const bodyHandle = await page.$("body");
const { height } = await bodyHandle.boundingBox(); // const { height } = await bodyHandle.boundingBox();
await bodyHandle.dispose(); // await bodyHandle.dispose();
await page.setViewport({ width: 1920, height: 500 }); // await page.setViewport({ width: 1920, height: 500 });
setTimeout(async () => { // setTimeout(async () => {
await page.screenshot({ path: "screenshot.png" }); // await page.screenshot({ path: "screenshot.png" });
await browser.close(); // await browser.close();
}, 5000); // }, 5000);
// } else { // // } else {
// console.error(`Element with class name '${className}' not found.`); // // console.error(`Element with class name '${className}' not found.`);
// } // // }
// Close the browser // // Close the browser
})(); // })();
// const zulip = require("zulip-js"); const zulip = require("zulip-js");
// const config = { const config = {
// zuliprc: "./download", zuliprc: "./zuliprc",
// zulipVersion: "v2", zulipVersion: "v2",
// }; };
// async function deleteMessages() { async function deleteMessages() {
// const client = await zulip(config); const client = await zulip(config);
// // Thay thế "stream-name", "topic-name", và các mốc thời gian cụ thể // Thay thế "stream-name", "topic-name", và các mốc thời gian cụ thể
// const streamName = "Result test - auto.nswteam.net"; const streamName = "Result test - auto.nswteam.net";
// const topicName = "Log Alert"; const topicName = "AU-dev";
// const startTime = Date.parse("2023-09-11T00:00:00Z"); const startTime = Date.parse("2023-09-11T00:00:00Z");
// const endTime = Date.parse("2023-09-11T23:59:59Z"); const endTime = Date.parse("2023-09-11T23:59:59Z");
// try { try {
// const messages = await client.messages.retrieve({ const messages = await client.messages.retrieve({
// anchor: "oldest", anchor: "oldest",
// num_before: 0, num_before: 0,
// num_after: 5000, // Điều chỉnh theo nhu cầu của bạn num_after: 3, // Điều chỉnh theo nhu cầu của bạn
// narrow: [ narrow: [
// { operator: "stream", operand: streamName }, { operator: "stream", operand: streamName },
// { operator: "topic", operand: topicName }, { operator: "topic", operand: topicName },
// // { // {
// // operator: , // operator: ,
// // operand: `169457100,1694571399`, // operand: `169457100,1694571399`,
// // }, // },
// ], ],
// }); });
// console.log(messages.messages.length) console.log(messages.messages.map(obj=>obj.reactions))
// // for (const message of messages.messages) { // for (const message of messages.messages) {
// // const res = await client.messages.deleteById({ message_id: message.id }); // const res = await client.messages.deleteById({ message_id: message.id });
// // console.log(`Deleted message ID ${message.id}`); // console.log(`Deleted message ID ${message.id}`);
// // console.log(res) // console.log(res)
// // } // }
// } catch (error) { } catch (error) {
// console.error("Error:", error); console.error("Error:", error);
// } }
// } }
// deleteMessages(); deleteMessages();
// const zulip = require("zulip-js"); // const zulip = require("zulip-js");
// const fs = require("fs"); // const fs = require("fs");

4
zuliprc Normal file
View File

@ -0,0 +1,4 @@
[api]
email=networktool-bot@zulip.ipsupply.com.au
key=0jMAmOuhfLvBqKJikv5oAkyNM4RIEoAM
site=https://zulip.ipsupply.com.au