UBS/analytics.js

71 lines
2 KiB
JavaScript

const pool = global.db_pool
module.exports = (req, res, next) => {
next();
const { path, method } = req;
pool.query(
'INSERT INTO analytics (method, endpoint, count) VALUES (?, ?, 1) ON DUPLICATE KEY UPDATE count = count + 1',
[method, path],
(error, results) => {
if (error) {
console.error('Error logging analytics:', error);
}
}
);
if (path.includes('/v1/ban/roblox/')) {
pool.query(
'INSERT INTO globalAnalytics (tag, value) VALUES ("ROBLOX_CHECKS", 1) ON DUPLICATE KEY UPDATE value = value + 1;',
(error) => {
if (error) {
console.error('Error logging global analytics:', error);
}
}
);
}
if (path.includes('/v1/ban/discord/')) {
pool.query(
'INSERT INTO globalAnalytics (tag, value) VALUES ("DISCORD_CHECKS", 1) ON DUPLICATE KEY UPDATE value = value + 1;',
(error) => {
if (error) {
console.error('Error logging global analytics:', error);
}
}
);
}
if (path.includes('/v1/ban/')) {
pool.query(
'INSERT INTO globalAnalytics (tag, value) VALUES ("TOTAL_CHECKS", 1) ON DUPLICATE KEY UPDATE value = value + 1;',
(error) => {
if (error) {
console.error('Error logging global analytics:', error);
}
}
);
}
if (req.headers['roblox-id']) { // Roblox game ID. Insert if not exists into gameAnalytics table, if /v1/ban/roblox/:id is called incirment globalAnalytics key=TOTAL_CHECKS
// pool.query(
// 'INSERT INTO gameAnalytics (gameID) VALUES (?) ON DUPLICATE KEY UPDATE gameID = gameID;',
// [req.headers['roblox-id']],
// (error) => {
// if (error) {
// console.error('Error logging game analytics:', error);
// }
// }
// ); -- Disable until fix
if (path.includes('/v1/ban/roblox/')) {
pool.query(
'INSERT INTO globalAnalytics (tag, value) VALUES ("ROBLOX_CHECKS_FROM_SERVERS", 1) ON DUPLICATE KEY UPDATE value = value + 1;',
(error) => {
if (error) {
console.error('Error logging global analytics:', error);
}
}
);
}
}
}