import {and, eq, inArray, lte, sql} from "drizzle-orm"; import {db} from "../../../../database/dbclient.js"; import {logs} from "../../../../database/schema/logs.js"; import {createLog} from "../logger.js"; export const getLogs = async (data: any) => { try { // clear all remaining logs ne to info. const checked = data.checked && data.checked[0] === "true" ? true : false || false; const logData = await db .select() .from(logs) .where( and( lte(logs.created_at, sql.raw(`NOW() - INTERVAL '${data.hours} hours'`)), inArray(logs.service, data.service), inArray(logs.level, data.level), eq(logs.checked, checked) ) ); return {success: true, message: "logs returned", data: logData}; } catch (error) { console.log(error); createLog("error", "lst", "logger", `There was an error deleteing server logs. ${error}`); return {success: false, message: "An error occured while trying to get the logs", error}; } };