diff --git a/frontend/tools/logger.ts b/frontend/tools/logger.ts
index e4e45eb..a010151 100644
--- a/frontend/tools/logger.ts
+++ b/frontend/tools/logger.ts
@@ -1,91 +1,31 @@
import fs from "fs/promises";
-type LogType = {
- title: string;
- status?: "success" | "error" | "info" | "warning";
- message?: string,
- details?: any
-}
-
class Logger {
- private static formatToMarkdown(log: LogType) {
- const date = new Date();
- let month = "" + (date.getMonth() + 1);
- let day = "" + date.getDate();
- let year = date.getFullYear();
- let hour = date.getHours();
- let minutes = date.getMinutes();
- let seconds = date.getSeconds();
-
- if (month.length < 2) {
- month = "0" + month;
- }
-
- if (day.length < 2) {
- day = "0" + day;
- }
-
- let markdownContent = "";
-
- let icon = "ℹ️";
-
- switch (log.status) {
- case "info":
- icon = "ℹ️";
- break;
- case "error":
- icon = "‼️";
- break;
- case "warning":
- icon = "⚠️";
- break;
- case "success":
- icon = "✅";
- break;
- default :
- icon = "ℹ️";
- break;
- }
-
- markdownContent += `## ${icon} ${log.title} \n`;
- // markdownContent += `## ${[year, month, day].join("-")} ${hour}:${minutes}:${seconds} \n`;
- markdownContent += `## ${hour} : ${minutes} : ${seconds} \n`;
-
- if (log.message) {
- markdownContent += `**Message:**\n ${log.message}\n\n`;
- }
- if (log.details) {
- markdownContent += `**Details:**\n\n\`\`\`json\n${JSON.stringify(log.details, null, 2)}\n\`\`\`\n\n`;
- }
-
- markdownContent += "
\n\n";
- markdownContent += "---\n";
-
- return markdownContent;
- }
-
- public static async log(info: LogType) {
- const formattedLog = this.formatToMarkdown(info);
-
- try {
- await fs.appendFile(".logs/log.md", formattedLog);
- } catch (e) {
- console.error(e);
- }
- }
-
public static async axiosErrorLog(error: any) {
+ const errorJson = error.toJSON();
- const logData : LogType = {
- title : error?.message,
- message : `${error?.config?.method?.toUpperCase()} ${error?.config?.url}`,
- details : error,
- }
+ const nowDate = new Date();
- const formattedLog = this.formatToMarkdown(logData);
+ const logData: AxiosLogType = {
+ url: errorJson.config.url,
+ code: errorJson.code!,
+ status: errorJson.status!,
+ method: errorJson.config.method,
+ response: error?.response?.data,
+ requestHeaders: errorJson.config.headers,
+ responseHeaders: error.response.headers,
+ payload: errorJson.config.data ? JSON.parse(errorJson.config.data) : undefined,
+ params: errorJson.config.params ?? undefined,
+ date: nowDate.toString()
+ };
try {
- await fs.appendFile(".logs/log.md", formattedLog);
+ const oldLogs = await fs.readFile(".logs/log.json", "utf-8");
+ const oldLogsJson = JSON.parse(oldLogs) as Record[];
+
+ oldLogsJson.push(logData);
+
+ await fs.writeFile(".logs/log.json", JSON.stringify(oldLogsJson));
} catch (e) {
console.error(e);
}