def run(self): while True: # 打开连接 start_connect(sqlite_db_use=False) try: container_monitor.init() login_log("container_monitor_script", "完成一次应用状态扫描!") except Exception as err: login_log("container_monitor_script_error", err.args[0]) time.sleep(5) try: if not task_execute.init(): login_log("task_script", "任务队列没有任务") login_log("task_script", "完成一次任务调度!") except Exception as err: login_log("task_script_error", err.args[0]) time.sleep(5) # 关闭数据库 close_connect(sqlite_db_use=False) time.sleep(5)
def __db_connect(): start_connect()
for fp in fps: fp_path = session_path + "/" + fp fp = open(fp_path, "rb") data = fp.read() fp.close() obj = pickle.loads(data) if obj['time'] < time.time(): os.remove(fp_path) print("清除session结束") # 清除孤儿容器 print("开始清除孤儿容器") start_connect(sqlite_db_use=False) c = db.execute_sql("select id, api_url, container_id, app_id, host, port from app_container where app_id not in " "(select id from app)") objs = c.fetchall() for t in objs: obj['id'] = t[0] obj['api_url'] = t[1] obj['container_id'] = t[2] obj['app_id'] = t[3] obj['host'] = t[4] obj['port'] = t[5] login_log("maintain", "发现孤儿容器,所属应用id:%d,容器id:%s,容器域名:%s,容器端口:%d" % (obj['app_id'], obj['container_id'], obj['host'], obj['port'])) api_url = obj['api_url'] + "remove" data = { "containerId": obj['container_id']