19
来源:互联网 发布:网页模板源码 编辑:程序博客网 时间:2024/04/30 01:18
iResult = dev_sync_manager.GetInstance().GetDevInfoFromDB(param_tool.GetInstance().param_db_real.m_str_db_ip,param_tool.GetInstance().param_db_real.m_str_db_user,param_tool.GetInstance().param_db_real.m_str_db_pw,'real');
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('If_Speed_Sync:GetRealDevInfoFromDB failed',Com_foreground_interface);
return iResult;
iResult = dev_sync_manager.GetInstance().GetDevInfoFromDB(param_tool.GetInstance().param_db_simulation.m_str_db_ip,param_tool.GetInstance().param_db_simulation.m_str_db_user,param_tool.GetInstance().param_db_simulation.m_str_db_pw,'simu');
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('If_Speed_Sync:GetSimuDevInfoFromDB failed',Com_foreground_interface);
return iResult;
iResult = dev_sync_manager.GetInstance().WriteDevInfoToFile('real');
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('If_Speed_Sync:WriteRealDevInfoToFile failed',Com_foreground_interface);
return iResult;
iResult = dev_sync_manager.GetInstance().WriteDevInfoToFile('simu');
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('If_Speed_Sync:WriteSimuDevInfoToFile failed',Com_foreground_interface);
return iResult;
iResult = dev_sync_manager.GetInstance().SyncDevInfo('if_speed');
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('If_Speed_Sync:SyncDevInfo failed',Com_foreground_interface);
return iResult;
log_manager.GetInstance().CoutLog('end to run run_if_speed_update.py',Com_foreground_interface);
return oErrorBase.base_succeed;
#数据入库
def SaveDataToDB(list_db_param):
str_real_ip = list_db_param[0];
str_real_user = list_db_param[1];
str_real_pw = list_db_param[2];
str_simu_ip = list_db_param[3];
str_simu_user = list_db_param[4];
str_simu_pw = list_db_param[5];
str_topo_name = list_db_param[6];
data_manager.GetInstance().ClearRelationDataFromDB(str_simu_ip,str_simu_user,str_simu_pw);
data_manager.GetInstance().GetOriginData(str_real_ip,str_real_user,str_real_pw,str_simu_ip,str_simu_user,str_simu_pw,str_topo_name);
data_manager.GetInstance().AddIfInfotoDB(str_real_ip,str_real_user,str_real_pw,str_simu_ip,str_simu_user,str_simu_pw);
data_manager.GetInstance().AddIPIDInfoToDB(str_simu_ip,str_simu_user,str_simu_pw);
"""
函数名:ScdlSync
函数参数:参数list[模拟视图id,操作,同步任务id,同步任务uid]
函数作用:最外层的功能控制流程
"""
def ScdlSync(list_param):
log_manager.GetInstance().CoutLog('task begin...',Com_foreground_interface);
t_str_time = '';
t_int_task_status = task_status.task_exectuing;
iResult = oErrorBase.base_succeed;
#最先设置模拟数据库参数并打开模拟数据库,便于之后进行数据库操作,参数为程序获得的本机数据库参数
simu_db_tool = db_tools();
simu_db_tool.SetDBInfo(param_tool.GetInstance().m_str_simu_db_ip,param_tool.GetInstance().m_str_simu_db_user,param_tool.GetInstance().m_str_simu_db_pw);
iResult = simu_db_tool.OpenDBCon('config_db');
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('open simu db failed failed',Com_foreground_interface);
return iResult;
#利用将param_list转化成程序实际需要的各项参数
iResult = param_tool.GetInstance().InitBasicParam(list_param);
if (oErrorBase.base_succeed != iResult):
t_str_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time()));
iResult = simu_db_tool.SetViewTaskStatus(param_tool.GetInstance().m_int_task_view_id,forground_task_status.task_fail);
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('Set view Task Status failed',Com_foreground_interface);
return iResult;
iResult = simu_db_tool.SetSynTaskStatus(param_tool.GetInstance().m_str_task_uid,'',t_str_time,forground_task_status.task_fail);
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('SetSynTaskStatus failed',Com_foreground_interface);
return iResult;
log_manager.GetInstance().CoutLog('InitBasicParam failed',Com_foreground_interface);
log_manager.GetInstance().CoutLog('argv:',Com_foreground_interface);
for elem in list_param:
log_manager.GetInstance().CoutLog(str(elem),Com_foreground_interface);
simu_db_tool.CloseDBCon();#关闭模拟数据库
return oErrorBase.base_failed;
param_tool.GetInstance().BasicParamInit();#由于参数的获取方式在测试和实际运行时有差别,为避免大范围的变量修改,用这个函数将实际逻辑处理出来的参数赋值给哥文件中使用的参数
#根据topo名创建对应的模拟设备ip和真实设备ip的对应关系文件
iResult = param_tool.GetInstance().CreateTopoIPRelationFile();
if (oErrorBase.base_succeed != iResult):
t_str_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time()));
iResult =simu_db_tool.SetViewTaskStatus(param_tool.GetInstance().m_int_task_view_id,forground_task_status.task_fail);
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('Set view Task Status failed',Com_foreground_interface);
return iResult;
iResult = simu_db_tool.SetSynTaskStatus(param_tool.GetInstance().m_str_task_uid,'',t_str_time,forground_task_status.task_fail);
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('SetSynTaskStatus failed',Com_foreground_interface);
return iResult;
log_manager.GetInstance().CoutLog('CreateTopoIPRelationFile failed',Com_foreground_interface);
simu_db_tool.CloseDBCon();#关闭模拟数据库
return oErrorBase.base_failed;
#利用真实模拟ip对应文件初始化m_port_manager
iResult = m_port_manager.GetInstance().DateInitFromFile(param_tool.GetInstance().param_db_real.m_str_db_topo_name + 'm_port_info.cfg');
if (oErrorBase.base_succeed != iResult):
t_str_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time()));
iResult = simu_db_tool.SetViewTaskStatus(param_tool.GetInstance().m_int_task_view_id,forground_task_status.task_fail);
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('Set view Task Status failed',Com_foreground_interface);
return iResult;
iResult = simu_db_tool.SetSynTaskStatus(param_tool.GetInstance().m_str_task_uid,'',t_str_time,forground_task_status.task_fail);
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('SetSynTaskStatus failed',Com_foreground_interface);
return iResult;
log_manager.GetInstance().CoutLog('DateInitFromFile failed',Com_foreground_interface);
simu_db_tool.CloseDBCon();#关闭模拟数据库
return oErrorBase.base_failed;
if (oErrorBase.base_succeed != iResult):
t_str_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time()));
iResult = simu_db_tool.SetViewTaskStatus(param_tool.GetInstance().m_int_task_view_id,forground_task_status.task_fail);
if (oErrorBase.base_succeed != iResult):
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('If_Speed_Sync:GetRealDevInfoFromDB failed',Com_foreground_interface);
return iResult;
iResult = dev_sync_manager.GetInstance().GetDevInfoFromDB(param_tool.GetInstance().param_db_simulation.m_str_db_ip,param_tool.GetInstance().param_db_simulation.m_str_db_user,param_tool.GetInstance().param_db_simulation.m_str_db_pw,'simu');
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('If_Speed_Sync:GetSimuDevInfoFromDB failed',Com_foreground_interface);
return iResult;
iResult = dev_sync_manager.GetInstance().WriteDevInfoToFile('real');
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('If_Speed_Sync:WriteRealDevInfoToFile failed',Com_foreground_interface);
return iResult;
iResult = dev_sync_manager.GetInstance().WriteDevInfoToFile('simu');
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('If_Speed_Sync:WriteSimuDevInfoToFile failed',Com_foreground_interface);
return iResult;
iResult = dev_sync_manager.GetInstance().SyncDevInfo('if_speed');
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('If_Speed_Sync:SyncDevInfo failed',Com_foreground_interface);
return iResult;
log_manager.GetInstance().CoutLog('end to run run_if_speed_update.py',Com_foreground_interface);
return oErrorBase.base_succeed;
#数据入库
def SaveDataToDB(list_db_param):
str_real_ip = list_db_param[0];
str_real_user = list_db_param[1];
str_real_pw = list_db_param[2];
str_simu_ip = list_db_param[3];
str_simu_user = list_db_param[4];
str_simu_pw = list_db_param[5];
str_topo_name = list_db_param[6];
data_manager.GetInstance().ClearRelationDataFromDB(str_simu_ip,str_simu_user,str_simu_pw);
data_manager.GetInstance().GetOriginData(str_real_ip,str_real_user,str_real_pw,str_simu_ip,str_simu_user,str_simu_pw,str_topo_name);
data_manager.GetInstance().AddIfInfotoDB(str_real_ip,str_real_user,str_real_pw,str_simu_ip,str_simu_user,str_simu_pw);
data_manager.GetInstance().AddIPIDInfoToDB(str_simu_ip,str_simu_user,str_simu_pw);
"""
函数名:ScdlSync
函数参数:参数list[模拟视图id,操作,同步任务id,同步任务uid]
函数作用:最外层的功能控制流程
"""
def ScdlSync(list_param):
log_manager.GetInstance().CoutLog('task begin...',Com_foreground_interface);
t_str_time = '';
t_int_task_status = task_status.task_exectuing;
iResult = oErrorBase.base_succeed;
#最先设置模拟数据库参数并打开模拟数据库,便于之后进行数据库操作,参数为程序获得的本机数据库参数
simu_db_tool = db_tools();
simu_db_tool.SetDBInfo(param_tool.GetInstance().m_str_simu_db_ip,param_tool.GetInstance().m_str_simu_db_user,param_tool.GetInstance().m_str_simu_db_pw);
iResult = simu_db_tool.OpenDBCon('config_db');
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('open simu db failed failed',Com_foreground_interface);
return iResult;
#利用将param_list转化成程序实际需要的各项参数
iResult = param_tool.GetInstance().InitBasicParam(list_param);
if (oErrorBase.base_succeed != iResult):
t_str_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time()));
iResult = simu_db_tool.SetViewTaskStatus(param_tool.GetInstance().m_int_task_view_id,forground_task_status.task_fail);
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('Set view Task Status failed',Com_foreground_interface);
return iResult;
iResult = simu_db_tool.SetSynTaskStatus(param_tool.GetInstance().m_str_task_uid,'',t_str_time,forground_task_status.task_fail);
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('SetSynTaskStatus failed',Com_foreground_interface);
return iResult;
log_manager.GetInstance().CoutLog('InitBasicParam failed',Com_foreground_interface);
log_manager.GetInstance().CoutLog('argv:',Com_foreground_interface);
for elem in list_param:
log_manager.GetInstance().CoutLog(str(elem),Com_foreground_interface);
simu_db_tool.CloseDBCon();#关闭模拟数据库
return oErrorBase.base_failed;
param_tool.GetInstance().BasicParamInit();#由于参数的获取方式在测试和实际运行时有差别,为避免大范围的变量修改,用这个函数将实际逻辑处理出来的参数赋值给哥文件中使用的参数
#根据topo名创建对应的模拟设备ip和真实设备ip的对应关系文件
iResult = param_tool.GetInstance().CreateTopoIPRelationFile();
if (oErrorBase.base_succeed != iResult):
t_str_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time()));
iResult =simu_db_tool.SetViewTaskStatus(param_tool.GetInstance().m_int_task_view_id,forground_task_status.task_fail);
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('Set view Task Status failed',Com_foreground_interface);
return iResult;
iResult = simu_db_tool.SetSynTaskStatus(param_tool.GetInstance().m_str_task_uid,'',t_str_time,forground_task_status.task_fail);
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('SetSynTaskStatus failed',Com_foreground_interface);
return iResult;
log_manager.GetInstance().CoutLog('CreateTopoIPRelationFile failed',Com_foreground_interface);
simu_db_tool.CloseDBCon();#关闭模拟数据库
return oErrorBase.base_failed;
#利用真实模拟ip对应文件初始化m_port_manager
iResult = m_port_manager.GetInstance().DateInitFromFile(param_tool.GetInstance().param_db_real.m_str_db_topo_name + 'm_port_info.cfg');
if (oErrorBase.base_succeed != iResult):
t_str_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time()));
iResult = simu_db_tool.SetViewTaskStatus(param_tool.GetInstance().m_int_task_view_id,forground_task_status.task_fail);
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('Set view Task Status failed',Com_foreground_interface);
return iResult;
iResult = simu_db_tool.SetSynTaskStatus(param_tool.GetInstance().m_str_task_uid,'',t_str_time,forground_task_status.task_fail);
if (oErrorBase.base_succeed != iResult):
log_manager.GetInstance().CoutLog('SetSynTaskStatus failed',Com_foreground_interface);
return iResult;
log_manager.GetInstance().CoutLog('DateInitFromFile failed',Com_foreground_interface);
simu_db_tool.CloseDBCon();#关闭模拟数据库
return oErrorBase.base_failed;
if (oErrorBase.base_succeed != iResult):
t_str_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time()));
iResult = simu_db_tool.SetViewTaskStatus(param_tool.GetInstance().m_int_task_view_id,forground_task_status.task_fail);
if (oErrorBase.base_succeed != iResult):
0 0