-
Notifications
You must be signed in to change notification settings - Fork 22
Expand file tree
/
Copy pathhandler.py
More file actions
96 lines (78 loc) · 2.5 KB
/
handler.py
File metadata and controls
96 lines (78 loc) · 2.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
"""
这是接口类
编写者:高鹏
2018-12-21
"""
#python 3.6中也可以使用方便使用抽象类 from abc import ABC,abstractmethod
from abc import ABC, abstractmethod
from logger.Fun_log_create import *
from global_pars.Class_global_pars import *
__all__ = ['Handller','Wroker']
class Handller(ABC):
"""
抽象接口
"""
@abstractmethod
def env_init(self,debug,env_par):
"""
接口函数用于初始化各种子模块
:return: 0 错误 1 正常
"""
pass
def check_stat(self):
"""
接口函数用于检查所有的状态
:return: 0 正常 1 失败
"""
pass
def check_vip(self,stat):
"""
检查VIP的函数接口
:return: 0 关闭 1 维持 2 启动
"""
pass
def oper_vip(self,stat):
"""
启动VIP的函数接口
:return:
"""
pass
def check_par(self,par_var):
"""
检查参数接口
:param par_var:
:return:
"""
pass
class Wroker():
"""
调用类,做相应的解耦
"""
def __init__(self,handler):
self.vip_handler = handler
self.logger = None
def env_init(self,debug,env_par):
"""
环境初始化辅助类主要用于初始化日志系统
:param debug: 是否开启debug
:param env_par: 自定义的环境变量字典列表
:return: 无返回值
"""
#下面初始化日志系统模块
global_par.set_global_pars('debug', debug) #不开启debug 加入到全局参数
self.logger = create_logging(env_par['install_path']+'HAIPMGR'+str(env_par['mysql_port']+'.log'), 'HAIPMGR') #设置日志系统
global_par.set_global_pars('logger', self.logger) # 将日志指针加入到全局参数
#下面初始化其他参数
try:
self.vip_handler.env_init(env_par)
except Exception as e:
self.logger.error(e,exc_info = True)
exit(-1) #异常退出
def check_stat(self): #检查基本状态 4 阶段
return self.vip_handler.check_stat()
def check_vip(self,stat):#检查VIP状态
return self.vip_handler.check_vip(stat)
def oper_vip(self,stat): #做vip操作
return self.vip_handler.oper_vip(stat)
def check_par(self,par_var): #进行参数检查
self.vip_handler.check_par(par_var)