cruxx commited on
Commit
ddae713
·
1 Parent(s): 7151e9d

Update index.js

Browse files
Files changed (1) hide show
  1. index.js +22 -6
index.js CHANGED
@@ -1,6 +1,7 @@
1
- for (let condition of ['unhandledRejection', 'uncaughtException'])
2
- process.on(condition, console.error)
3
 
 
 
4
  const morgan = require('morgan')
5
  const express = require('express')
6
  const puppeteer = require('puppeteer')
@@ -14,21 +15,32 @@ app.use(async (_, __, next) => {
14
  for (let [url, data] of cache) {
15
  const timeReset = 10 * 60 * 1000 // 10 min
16
  if (Date.now() - data.lastFetch > timeReset) {
17
- // await data.close()
18
  cache.delete(url)
19
  }
20
  }
21
  next()
22
  })
23
 
24
- app.all('/', (_, res) => {
 
 
 
 
 
 
 
 
 
25
  res.json({
26
  creator: '@rippanteq7',
27
  message: 'Hello World',
28
- uptime: new Date(process.uptime() * 1000).toUTCString().split(' ')[4]
 
29
  })
30
  })
31
 
 
32
  app.get('/api', async (req, res) => {
33
  try {
34
  const { url } = req.query
@@ -54,6 +66,10 @@ app.get('/api', async (req, res) => {
54
  const PORT = process.env.PORT || 7860
55
  app.listen(PORT, () => console.log('App running on port', PORT))
56
 
 
 
 
 
57
  async function ssyoutube(url) {
58
  const browser = await puppeteer.launch({
59
  headless: 'new',
@@ -69,7 +85,7 @@ async function ssyoutube(url) {
69
  await page.click('#search')
70
 
71
  const response = await page.waitForResponse(res =>
72
- res.url().includes('convert') && res.request().method() === 'POST')
73
 
74
  const json = await response.json()
75
  cache.set(url, Object.assign(json, { lastFetch: Date.now() }))
 
1
+ for (let e of ['unhandledRejection', 'uncaughtException']) process.on(e, console.error)
 
2
 
3
+ const os = require('os')
4
+ const bytes = require('bytes')
5
  const morgan = require('morgan')
6
  const express = require('express')
7
  const puppeteer = require('puppeteer')
 
15
  for (let [url, data] of cache) {
16
  const timeReset = 10 * 60 * 1000 // 10 min
17
  if (Date.now() - data.lastFetch > timeReset) {
18
+ console.log(`Deleting url "${url}" from cache`)
19
  cache.delete(url)
20
  }
21
  }
22
  next()
23
  })
24
 
25
+
26
+ app.all('/', (req, res) => {
27
+ const obj = {}
28
+ const used = process.memoryUsage()
29
+ for (let key in used) obj[key] = formatSize(used[key])
30
+
31
+ const totalmem = os.totalmem()
32
+ const freemem = os.freemem()
33
+ obj.memoryUsage = `${formatSize(totalmem - freemem)} / ${formatSize(totalmem)}`
34
+
35
  res.json({
36
  creator: '@rippanteq7',
37
  message: 'Hello World',
38
+ uptime: new Date(process.uptime() * 1000).toUTCString().split(' ')[4],
39
+ status: obj
40
  })
41
  })
42
 
43
+
44
  app.get('/api', async (req, res) => {
45
  try {
46
  const { url } = req.query
 
66
  const PORT = process.env.PORT || 7860
67
  app.listen(PORT, () => console.log('App running on port', PORT))
68
 
69
+ function formatSize(num) {
70
+ return bytes.format(+num || 0, { unitSeparator: ' ' })
71
+ }
72
+
73
  async function ssyoutube(url) {
74
  const browser = await puppeteer.launch({
75
  headless: 'new',
 
85
  await page.click('#search')
86
 
87
  const response = await page.waitForResponse(res =>
88
+ res.url().includes('ssyoutube.com/api') && res.request().resourceType() === 'xhr')
89
 
90
  const json = await response.json()
91
  cache.set(url, Object.assign(json, { lastFetch: Date.now() }))