diff --git a/VERSION.txt b/VERSION.txt
index 3986bb5..cc292e4 100644
--- a/VERSION.txt
+++ b/VERSION.txt
@@ -1 +1 @@
-v20250422193845
\ No newline at end of file
+v20250429213045
\ No newline at end of file
diff --git a/breeze_coefficients.json b/breeze_coefficients.json
deleted file mode 100644
index a698435..0000000
--- a/breeze_coefficients.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "NTES_GOD_IMAGES": 0.54,
- "NTES_GOD_VIDEOS": 3.8,
- "NTES_GOD_CHAT_IMAGES": 0.54,
- "NTES_GOD_CHAT_VIDEOS": 3.8,
- "NTES_DASONG": 139.19,
- "SPIDER_VIDEO": 3.8,
- "SPIDER_VIDEO_SP": 13.3,
- "NTES_GOD_AI": 0.54,
- "NTES_GOD_TOP": 3.8,
- "T_SPIDER_VIDEO": 3.8,
- "T_SPIDER_VIDEO_SP": 13.3,
- "V_SPIDER_VIDEO": 3.8,
- "V_SPIDER_VIDEO_SP": 13.3,
- "NTES_GOD_XHS": 0.54,
- "XHS_SPIDER_VIDEO": 3.8,
- "Cupid": 0.54,
- "CHAT_P2P": 0.55,
- "CHAT_TEAM": 0.55,
- "CHAT_ROOM": 0.55,
- "CHAT_ROOM_MSG": 0.55
-}
\ No newline at end of file
diff --git a/breeze_monitor.py b/breeze_monitor.py
index d8ba6b3..1902544 100644
--- a/breeze_monitor.py
+++ b/breeze_monitor.py
@@ -1,49 +1,904 @@
# -*- coding: utf-8 -*-
-import base64,zlib,sys,os,time,random
-import threading,importlib,subprocess
+import requests
+import time
+import json
+from datetime import datetime, timedelta
+import logging
+import os
+import sys
+import threading
+from threading import Lock
+import re
+import subprocess
-def _egg7D2Y3rRxx(d,k):
- return bytes(a^b for a,b in zip(d,k*(len(d)//len(k)+1)))
+# 配置日志
+def setup_logging():
+ try:
+ # 获取当前脚本所在目录
+ script_dir = os.path.dirname(os.path.abspath(__file__))
+ log_file = os.path.join(script_dir, 'breeze_monitor.log')
+
+ # 确保日志文件存在
+ if not os.path.exists(log_file):
+ with open(log_file, 'w', encoding='utf-8') as f:
+ f.write('')
+
+ logging.basicConfig(
+ level=logging.INFO,
+ format='%(asctime)s - %(levelname)s - %(message)s',
+ handlers=[
+ logging.FileHandler(log_file, encoding='utf-8', mode='a'),
+ logging.StreamHandler()
+ ]
+ )
+ logging.info("Breeze监控日志系统初始化成功")
+ except Exception as e:
+ print(f"日志系统初始化失败: {str(e)}")
+ # 如果文件日志失败,至少使用控制台日志
+ logging.basicConfig(
+ level=logging.INFO,
+ format='%(asctime)s - %(levelname)s - %(message)s',
+ handlers=[logging.StreamHandler()]
+ )
-def _ijPmXy0Gk(t,m,is_error=False):
- try:
- try:
- from playsound import playsound
- except ImportError:
- subprocess.check_call([sys.executable,"-m","pip","install","playsound==1.2.2"],
- stdout=subprocess.DEVNULL,stderr=subprocess.DEVNULL)
- from playsound import playsound
-
-
- try:
- import winsound
- sound_type = winsound.MB_ICONERROR if is_error else winsound.MB_ICONINFORMATION
- winsound.MessageBeep(sound_type)
- except:
- print("\a")
-
+# 初始化日志系统
+setup_logging()
- print("\n" + "="*50)
- print(f"{t}: {m}")
- print("="*50 + "\n")
-
- return True
- except Exception as e:
- print(f"\n{t}: {m} (提示音播放失败: {str(e)})\n")
- return False
+# API配置
+API_BASE_URL = 'https://breeze.gameyw.netease.com/api/cms/issue/list'
-def _YQJaEJAlz1b(t,m,e=0):
- _ijPmXy0Gk(t,m,e==1)
+# 默认的各类工单的折算系数
+DEFAULT_COEFFICIENTS = {
+ 'NTES_GOD_IMAGES': 0.54, # 网易大神APP图片
+ 'NTES_GOD_VIDEOS': 3.8, # 网易大神APP视频
+ 'NTES_GOD_CHAT_IMAGES': 0.54, # 网易大神APP聊天图片
+ 'NTES_GOD_CHAT_VIDEOS': 3.8, # 网易大神APP聊天视频
+ 'NTES_DASONG': 139.19, # 大神大宋视频
+ 'SPIDER_VIDEO': 3.8, # 大神普通供给视频
+ 'SPIDER_VIDEO_SP': 13.3, # 大神高优供给视频
+ 'NTES_GOD_AI': 0.54, # 大神AI图片
+ 'NTES_GOD_TOP': 3.8, # 大神短视频
+ 'T_SPIDER_VIDEO': 3.8, # 大神tiktok普通视频
+ 'T_SPIDER_VIDEO_SP': 13.3, # 大神tiktok高优视频
+ 'V_SPIDER_VIDEO': 3.8, # 大神ins普通供给视频
+ 'V_SPIDER_VIDEO_SP': 13.3, # 大神ins高优供给视频
+ 'NTES_GOD_XHS': 0.54, # 大神小红书图片
+ 'XHS_SPIDER_VIDEO': 3.8, # 小红书供给视频
+ 'Cupid': 0.54 # 大神交友
+}
+# 系数配置文件路径
+COEFFICIENTS_CONFIG_FILE = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'breeze_coefficients.json')
-_SvRnKE=b'#+\x0f\x92\x18*&o\x16\xaa\xa0t\xa59\xeez'
-_Uu2Xr1Cf=b'Tesq` 记录系统各版本的更新内容和修复问题 添加download_auto_run.py一键安装脚本,自动下载文件、安装依赖并启动系统,简化安装流程x#4FMC5Hlm+Kp5er@mc(~TU8aTFy&T9UFgKJwk5;Q@}$@Mk_A{^-mg-G8j@17bxmSKE3`vT(5Mya&)B#6;L6t|Ga{kBgwYyeAUckvx$~&ouXDM*bvcG)w1018E!1eGf@T*KC7lW#%#7It0jSeuhCCcf7~HAZxN-+(unIRd}rj$`4jnWq-FV@kq
CxjtwcM#nvk`~f-g1g||W+o?4)^R;WrtSvn0@>s|If^UA`Nlg+N+};dN34#emiCwZ>>;o4$OViNaG!X6jmC%0#`{4PHIN%|hO)o28B#?k9qe8GJ)dUlKGV)rpW8Cxo3I12mi)*F)&H&g4I!5#MFW7$J?L)t%ApBWNnAndf)|$yS_vm6C3z5V-BQOnScHMp1b+7gcv8Am{$*h}lC1$~M4G6zQ9;n(Xrk=4vTG0GRW@+Z)#5!)X9yAwUpw=#o{?Rf83|5d)DpBTgVdvn$V`Rg*%6us{<*wQd?W!B7i1$5(NR~2~ifg@wb3`w{;!S8!(jruw))zuv85bP`Ep6lYW;Bf9pJpAmtQIpuQkc));tv21
7lESmN%upsm<>YHJ|r-XiqN-Hq87McP+t}dOrNC*DMnKwnNPIwz+DByaW_h{h2wrnQrD&^78rC^R7=_3G3Pis2xx%J>Tgok*FCo3FAt)_NHus3tbzl<7p@kKCEjoc-RAA4bt@wGyOXjSzoi#wY4anfrPPPj4gqrMg+h86i33!47&RXUd8}z2;n51I>&Be<5c^cZobF#ABKiS|6^+!uMckc&STZ?BlDrc|L_1LRXCmX
RsCifrQ(zE=wKIpHSdD~$DA>84QxI4jh$pz$~yj4oLlCo3Irk7su^Uz=14V5O6A1k3<}u_v;E^u~DCR9`(i=Es)!yocS2RymBrKy0!M8#QX3Y#EodkYwZdFDr|u;bIA|NO0v_haIlnYD$n`Ig$0n(x1og)lUz=F%z=~nb?4yl|pSoY9K4q2!}$ha7%}n_9Jj|rcW@HoaUV(nw4cO9I=4qLX>D?Z`G-0v}!|TcOph*#AMlfQsV%Daxkjnm5FtO@bSUJeKjBDVAz9OACPL{6{9|(b5?U~iYU-Esq*H;WB2)+;;*`>#U*7(Hr}83yr%7Iur12LosQ>)tfR^CrO}z2O1D6$rOdlQvCYwV+i$!e+oAWTPq>d$OMHEu
yOfx<*qH8X?W6%__8vikLQ#IMtr&*Z58Cf=qVlm9YpBPOX2@Bk!_(KD7g&B19vqp=;BhAfPPxju-ap|692A%B5YyU#P{D1C{)Nfwq51a$?kjP)GMQ@1#c5XI}7g1kVamo633L^QuNIKSl9kB~qeI(dUhp*YdeB)6NBYO_zCOKZD*K8@Fm6NL2025年4月29日更新 (v20250429213045):
+ 告警提示机制优化
+
+
+ 数据监控看板样式优化
+
+
+
+
+ 系数配置重构
+
+
+ 日志与界面优化
+
+
+ 自动化与用户体验
+
+
+ Bug修复
+
+
+ 2025年4月8日更新 (v20250408165207):
+ 2025年4月8日更新 (v20250410232012):
一键部署功能
diff --git a/start_monitor.cmd b/start_monitor.cmd index 4bf89d0..d4dfc82 100644 --- a/start_monitor.cmd +++ b/start_monitor.cmd @@ -2,7 +2,7 @@ chcp 65001 >nul cd /d "%~dp0" -echo 启动网易大神审核数据看板... +echo 启动网易大神实时审核数据看板... REM 检查Python路径 set PYTHON_PATH=C:\Python39\python.exe @@ -34,7 +34,7 @@ timeout /t 3 >nul REM 启动监控系统 echo [INFO] 正在启动主控制面板 (端口:8000)... cd /d "%~dp0" -start "网易大神审核数据监控系统" /b "%PYTHON_PATH%" dashboard.py +start "网易大神实时审核数据监控系统" /min "%PYTHON_PATH%" dashboard.py REM 等待1秒确保程序启动 timeout /t 1 >nul diff --git a/templates/dashboard.html b/templates/dashboard.html index 11bd6e7..246dff4 100644 --- a/templates/dashboard.html +++ b/templates/dashboard.html @@ -4,9 +4,16 @@
-
+
- + + @@ -729,19 +844,18 @@
检测到数据持续为零,请检查系统运行状态!
+