ifms-pti/server/src/cronTasks.js

58 lines
1.2 KiB
JavaScript
Raw Normal View History

2020-11-06 13:31:28 +00:00
import cron from 'node-cron'
2020-11-30 18:53:43 +00:00
import oui from 'oui'
2020-11-06 13:31:28 +00:00
2021-01-15 10:54:55 +00:00
import { User } from './classes/User'
2021-12-21 19:15:07 +00:00
import { deleteOldLogs, logInfo, logSuccess } from './lib/logger'
2020-12-18 14:53:04 +00:00
2022-05-17 15:36:20 +00:00
import { updateAccessPoints } from './lib/accessPoints'
2022-06-14 13:26:01 +00:00
import {
deleteOldStats,
generateStatsForAllAccessPoints
} from './lib/accessPointStats'
2022-12-08 14:24:45 +00:00
import { generateStatsForAllNetworks } from './lib/networkStats'
2022-05-17 15:36:20 +00:00
// WARNING! All crontasks are blocking! Do not await inside it
logInfo({
tags: ['cron'],
2021-01-18 20:57:04 +00:00
message: 'Agendando tarefas...'
})
2020-11-06 13:31:28 +00:00
cron.schedule('0 0 4 * * *', () => {
2021-01-15 10:57:28 +00:00
logInfo({
tags: ['cron', 'user'],
2021-01-19 12:59:55 +00:00
message: `Importação dos usuários do AD iniciada.`
2021-01-15 10:57:28 +00:00
})
User.importAllUsers()
2021-01-15 10:57:28 +00:00
})
2020-11-30 18:53:43 +00:00
cron.schedule('0 0 3 * * *', () => {
oui.update()
logSuccess({
tags: ['cron', 'oui'],
2021-01-18 20:57:04 +00:00
message: `Lista de OUIs atualizada`
})
})
cron.schedule('0 0 2 * * *', () => {
deleteOldLogs()
logSuccess({
tags: ['cron', 'log'],
2021-01-19 12:59:55 +00:00
message: `Logs antigos deletados`
})
2020-11-30 18:53:43 +00:00
})
2022-05-17 15:36:20 +00:00
cron.schedule('0 */2 * * * *', () => {
updateAccessPoints().catch(console.log)
2022-06-14 13:26:01 +00:00
})
2022-06-15 11:35:20 +00:00
cron.schedule('0 */1 * * * *', () => {
2022-06-14 13:26:01 +00:00
generateStatsForAllAccessPoints()
2022-12-08 14:24:45 +00:00
generateStatsForAllNetworks()
2022-06-14 13:26:01 +00:00
})
cron.schedule('0 0 2 * * *', () => {
deleteOldStats()
})