update folder watcher

This commit is contained in:
joseph le 2023-09-04 14:31:58 +07:00
parent ffc12a7f9e
commit 80458b4738
1 changed files with 62 additions and 48 deletions

View File

@ -40,12 +40,13 @@ export async function runtimeCheckLogs(folderPath) {
folderWatcher.on("add", async (filePath) => {
//import log new file
console.log(filePath.split("/")[filePath.split("/").length - 1]?.split("-")[0] + "&&&&" + moment(Date.now()).format("YYYYMMDD").toString())
console.log(filePath.split("/")[filePath.split("/").length - 1]?.split("-")[0] === moment(Date.now()).format("YYYYMMDD").toString())
if (filePath?.split(".")[filePath.split(".").length - 1] === "log" && filePath.split("/")[filePath.split("/").length - 1]?.split("-")[0] === moment(Date.now()).format("YYYYMMDD").toString()) {
console.log('New file added: ', filePath);
console.log("first")
const conn = await LogDetectFile.firstOrCreate(
if (
filePath?.split(".")[filePath.split(".").length - 1] === "log" &&
filePath.split("/")[filePath.split("/").length - 1]?.split("-")[0] ===
moment(Date.now()).format("YYYYMMDD").toString()
) {
console.log("New file added: ", filePath);
await LogDetectFile.firstOrCreate(
{ file_name: filePath.split("/")[filePath.split("/").length - 1] },
{ file_name: filePath.split("/")[filePath.split("/").length - 1] }
);
@ -57,8 +58,6 @@ export async function runtimeCheckLogs(folderPath) {
fileList_old = fileList;
updateFileList();
watchFilesInList();
await Database.manager.close("conn")
}
// updateFile;
});
@ -97,27 +96,27 @@ export async function runtimeCheckLogs(folderPath) {
// }
// });
// if (value.length === keyWord.length) {
const log = await LogDetectFile.findBy(
"file_name",
fileName
);
let checkLog = await Database.rawQuery(
"select * from log_reports where id_file = " +
log?.id_ldf +
" and line = " +
(index + 1) +
" and detected_content='" +
value +
"'"
);
if (checkLog[0].length === 0) {
await LogReport.create({
detected_content: value,
line: index + 1,
id_file: log?.id_ldf,
});
lines.push(index + 1);
}
const log = await LogDetectFile.findBy(
"file_name",
fileName
);
let checkLog = await Database.rawQuery(
"select * from log_reports where id_file = " +
log?.id_ldf +
" and line = " +
(index + 1) +
" and detected_content='" +
value +
"'"
);
if (checkLog[0].length === 0) {
await LogReport.create({
detected_content: value,
line: index + 1,
id_file: log?.id_ldf,
});
lines.push(index + 1);
}
// }
}
});
@ -127,7 +126,6 @@ export async function runtimeCheckLogs(folderPath) {
if (lines.length === 0) {
console.log(`${fileName} has changed (${eventType})---Good`);
} else {
console.log(
`${fileName} has changed (${eventType})---SOS---${lines.length}`
);
@ -142,20 +140,27 @@ export async function runtimeCheckLogs(folderPath) {
fileDetect?.id_ldf
);
let content = "| |Detected at | Line | Item/error | Content | Report\n|---|:---:|:---:|:---:|:---|:-----------:\n";
let content =
"| |Detected at | Line | Item/error | Content | Report\n|---|:---:|:---:|:---:|:---|:-----------:\n";
let spoiler = "";
let file = await fs
.readFileSync(filePath)
.toString()
?.split("\n");
.readFileSync(filePath)
.toString()
?.split("\n");
if (logsDetect[0].length > 10) {
spoiler = spoiler + "```spoiler ..."+ (logsDetect[0].length - 5) +" more items\n" + content
spoiler =
spoiler +
"```spoiler ..." +
(logsDetect[0].length - 5) +
" more items\n" +
content;
logsDetect[0].reverse()
logsDetect[0]
.reverse()
.slice(0, 5)
?.map((log, index) => {
content =
content +
content +
"|" +
(logsDetect[0].length - index) +
"|**" +
@ -163,7 +168,9 @@ export async function runtimeCheckLogs(folderPath) {
"**|" +
log.line +
"|" +
log.detected_content + "|"+ file[log.line-1] +
log.detected_content +
"|" +
file[log.line - 1] +
"|[View](https://logs.danielvu.com/api/log/showLog/" +
fileName +
")\n";
@ -181,7 +188,9 @@ export async function runtimeCheckLogs(folderPath) {
"**|" +
log.line +
"|" +
log.detected_content + "|"+ file[log.line-1] +
log.detected_content +
"|" +
file[log.line - 1] +
"|[View](https://logs.danielvu.com/api/log/showLog/" +
fileName +
")\n";
@ -196,13 +205,15 @@ export async function runtimeCheckLogs(folderPath) {
(logsDetect[0].length - index) +
"|**" +
moment(log.created_at).format("HH:mm - DD/MM") +
"**|" +
log.line +
"|" +
log.detected_content + "|"+ file[log.line-1] +
"|[View](https://logs.danielvu.com/api/log/showLog/" +
fileName +
")\n";
"**|" +
log.line +
"|" +
log.detected_content +
"|" +
file[log.line - 1] +
"|[View](https://logs.danielvu.com/api/log/showLog/" +
fileName +
")\n";
});
}
// setTimeout(() => {
@ -211,8 +222,11 @@ export async function runtimeCheckLogs(folderPath) {
"Result test - auto.nswteam.net",
"Log Alert",
":warning: :warning: **" +
fileName +
"**\n\n"+content+"\n\n"+spoiler
fileName +
"**\n\n" +
content +
"\n\n" +
spoiler
);
// }, 3000);
}