Yermek68 commited on
Commit
c75aa9c
·
verified ·
1 Parent(s): d6c810d

Create metrics_core.py

Browse files
Files changed (1) hide show
  1. metrics_core.py +37 -0
metrics_core.py ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import json
2
+ import os
3
+ from datetime import datetime
4
+
5
+ METRICS_FILE = "metrics_log.json"
6
+
7
+ def save_metrics(metrics: dict):
8
+ """
9
+ Сохраняет метрики в локальный JSON-файл.
10
+ """
11
+ # Добавляем timestamp
12
+ metrics["timestamp"] = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
13
+
14
+ # Если файла нет — создаём новый список
15
+ if not os.path.exists(METRICS_FILE):
16
+ with open(METRICS_FILE, "w", encoding="utf-8") as f:
17
+ json.dump([], f, ensure_ascii=False, indent=2)
18
+
19
+ # Загружаем старые метрики
20
+ with open(METRICS_FILE, "r", encoding="utf-8") as f:
21
+ data = json.load(f)
22
+
23
+ # Добавляем новые
24
+ data.append(metrics)
25
+
26
+ # Сохраняем обратно
27
+ with open(METRICS_FILE, "w", encoding="utf-8") as f:
28
+ json.dump(data, f, ensure_ascii=False, indent=2)
29
+
30
+ def read_metrics():
31
+ """
32
+ Возвращает все сохранённые метрики.
33
+ """
34
+ if not os.path.exists(METRICS_FILE):
35
+ return []
36
+ with open(METRICS_FILE, "r", encoding="utf-8") as f:
37
+ return json.load(f)