action / bt-source /panel /script /daily.py
GGSheng's picture
feat: deploy Gemma 4 to hf space
020c337 verified
import os,sys,time
panel_path = '/www/server/panel'
os.chdir(panel_path)
sys.path.append('class')
sys.path.insert(0, panel_path)
import public
# 检查是否有其他进程在运行
pidfile = '/tmp/panel_daily.pid'
if os.path.exists(pidfile):
pid = public.readFile(pidfile)
proc_stat_file = '/proc/{}/stat'.format(pid)
if os.path.exists(proc_stat_file):
public.print_log('daily.py is running')
sys.exit()
# 写入PID文件
public.writeFile(pidfile, str(os.getpid()))
from pluginAuth import Plugin
plugin_obj = Plugin(False)
plugin_list = plugin_obj.get_plugin_list()
if plugin_list["ltd"] < 0 and plugin_list["pro"] < 0:
sys.exit(0)
from panelDaily import panelDaily
pd = panelDaily()
pd.check_databases()
# 日报数据收集
start_daily_file = os.path.join(panel_path, 'data/start_daily.pl')
if os.path.exists(start_daily_file):
try:
t_now = time.localtime()
yesterday = time.localtime(time.mktime((
t_now.tm_year, t_now.tm_mon, t_now.tm_mday - 1,
0, 0, 0, 0, 0, 0
)))
yes_time_key = pd.get_time_key(yesterday)
store_app_usage_file = os.path.join(panel_path, 'data/store_app_usage.pl')
con = public.ReadFile(store_app_usage_file)
# self.write_log(str(con))
store = False
if con:
if con != str(yes_time_key):
store = True
else:
store = True
if store:
date_str = str(yes_time_key)
pd.store_app_usage(yes_time_key)
pd.check_server()
daily_data = pd.get_daily_data_local(date_str)
if "status" in daily_data.keys():
if daily_data["status"]:
score = daily_data["score"]
if public.M("system").dbfile("system").table("daily").where("time_key=?", (yes_time_key,)).count() == 0:
public.M("system").dbfile("system").table("daily").add("time_key,evaluate,addtime", (yes_time_key, score, time.time()))
public.WriteFile(store_app_usage_file, str(yes_time_key), "w")
except Exception as e:
public.print_log("存储应用空间信息错误:" + str(e))
# 删除PID文件
if os.path.exists(pidfile):
os.remove(pidfile)