Added better check and error handling to log file
This commit is contained in:
16
index.js
16
index.js
@@ -244,8 +244,8 @@ async function runAll() {
|
|||||||
for (const vpn of vpns) {
|
for (const vpn of vpns) {
|
||||||
const currentDate = new Date();
|
const currentDate = new Date();
|
||||||
const formattedDate = `${currentDate.getDate()}-${currentDate.getMonth() + 1}-${currentDate.getFullYear()}`;
|
const formattedDate = `${currentDate.getDate()}-${currentDate.getMonth() + 1}-${currentDate.getFullYear()}`;
|
||||||
const logEntries = JSON.parse(fs.readFileSync('batch_logs.json', 'utf8')) || [];
|
const logEntries = JSON.parse(fs.readFileSync('batch_logs.json', 'utf8'));
|
||||||
const entry = logEntries.find(entries => entries.accountName === vpn);
|
const entry = logEntries.find(entries => entries.accountName === vpn) || false;
|
||||||
if (entry && entry.date === formattedDate) {
|
if (entry && entry.date === formattedDate) {
|
||||||
logManager(`[${host}] ${vpn} already ran today!`, 'info');
|
logManager(`[${host}] ${vpn} already ran today!`, 'info');
|
||||||
continue;
|
continue;
|
||||||
@@ -281,13 +281,23 @@ async function runBatch(vpn) {
|
|||||||
logManager(`[${host}] Starting mcr-bot on host: ${host}`, 'info');
|
logManager(`[${host}] Starting mcr-bot on host: ${host}`, 'info');
|
||||||
|
|
||||||
if (!fs.existsSync('batch_logs.json')) {
|
if (!fs.existsSync('batch_logs.json')) {
|
||||||
fs.writeFile('batch_logs.json', JSON.stringify([], null, 2), err => {
|
fs.writeFile('batch_logs.json', '[]', err => {
|
||||||
if (err) {
|
if (err) {
|
||||||
logManager(`Failed to create batch_logs.json: ${err}`, 'error');
|
logManager(`Failed to create batch_logs.json: ${err}`, 'error');
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
const fileContent = await fs.readFile('batch_logs.json', 'utf-8');
|
||||||
|
try {
|
||||||
|
JSON.parse(fileContent);
|
||||||
|
}
|
||||||
|
catch (error) {
|
||||||
|
logManager(`[${host}] Existing log file is not in proper JSON format: ${error}`, 'error');
|
||||||
|
process.exit(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
logManager(`[${host}] Log file: batch_logs.json`, 'info');
|
logManager(`[${host}] Log file: batch_logs.json`, 'info');
|
||||||
|
|
||||||
for (let i = 0; i < args.length; i++) {
|
for (let i = 0; i < args.length; i++) {
|
||||||
|
|||||||
Reference in New Issue
Block a user