Spaces:
Runtime error
Runtime error
| const fs = require('fs') | |
| const path = require('path') | |
| const dirPath = path.join(process.cwd(), 'src/source') | |
| const dbPath = path.join(dirPath, 'data.json') | |
| const defaultData = { | |
| total_requests: 0, | |
| success: 0, | |
| failed: 0, | |
| endpoints: {} | |
| } | |
| const ensureDir = () => { | |
| if (!fs.existsSync(dirPath)) { | |
| fs.mkdirSync(dirPath, { recursive: true }) | |
| } | |
| } | |
| const load = () => { | |
| ensureDir() | |
| if (!fs.existsSync(dbPath)) { | |
| fs.writeFileSync(dbPath, JSON.stringify(defaultData, null, 2)) | |
| return { ...defaultData } | |
| } | |
| try { | |
| const raw = fs.readFileSync(dbPath, 'utf8') | |
| return JSON.parse(raw) | |
| } catch (error) { | |
| return { ...defaultData } | |
| } | |
| } | |
| const save = (data) => { | |
| ensureDir() | |
| try { | |
| fs.writeFileSync(dbPath, JSON.stringify(data, null, 2)) | |
| } catch (error) { | |
| return false | |
| } | |
| } | |
| const addRequest = (endpoint) => { | |
| const data = load() | |
| data.total_requests += 1 | |
| data.endpoints[endpoint] = (data.endpoints[endpoint] || 0) + 1 | |
| save(data) | |
| } | |
| const addSuccess = () => { | |
| const data = load() | |
| data.success += 1 | |
| save(data) | |
| } | |
| const addFailed = () => { | |
| const data = load() | |
| data.failed += 1 | |
| save(data) | |
| } | |
| module.exports = { load, save, addRequest, addSuccess, addFailed } |