else: print 'alarmTotal = ', alarmTotal if (alarmStatus.get(monName, False)): alarmStatus[monName] = False alarmTotal = 0 print "Recover", eval_function, alarmRecv if __name__ == '__main__': def logic(d_in): ff(d_in) print d_in return ("OK") ffD = nbNet('0.0.0.0', 50002, logic) ffD.run() # 正常:不报警的数据发送 # >>study:/home/kang>telnet 127.0.0.1 50002 # Trying 127.0.0.1... # Connected to 127.0.0.1. # Escape character is '^]'. # 00115{"MemTotal": 15888, "MemUsage": 1804, "MemFree": 14083, "Host": "teach.works", "LoadAvg": 0.15, "Time": 1434246795} # 00002OK # 报警:启动三个SSH,连发三次超阀值数据 # >>study:/home/kang/arch-5/lession08>telnet 127.0.0.1 50002 # Trying 127.0.0.1... # Connected to 127.0.0.1. # Escape character is '^]'.
def run(self): server = nbNet(self.host, self.port, cmdRunner) server.run()
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Author: Kang.Cunhua # @Date: 2015-11-29 14:33:49 # @Last Modified by: Kang.Cunhua # @Last Modified time: 2015-11-29 14:41:08 import sys import os sys.path.insert(1, os.path.join(sys.path[0], '..')) from nbNet import nbNet if __name__ == '__main__': def logic_echo(d_in): print d_in return 'OK' echo = nbNet('0.0.0.0', 9099, logic_echo) echo.run()
def run(self): server = nbNet(self.host, self.port, controller) server.run()
mon_data = json.loads(d_in) for rule in conf.ff_conf: monKey, operator, value, alarmRecv, num = rule monName = monKey + operator + str(value) eval_function = str(mon_data[monKey]) + operator + str(value) ff_result = eval(eval_function) if ff_result: if monName in alarmNum: alarmNum[monName] += 1 else: alarmNum[monName] = 1 if alarmNum[monName] >= num: alarmStatus[monName] = True print "Alarm", eval_function, alarmRecv, alarmNum[monName] else: if (alarmStatus.get(monName, False)): alarmStatus[monName] = False alarmNum[monName] = 0 print "Recover", eval_function, alarmRecv print alarmStatus if __name__ == '__main__': def logic(d_in): ff(d_in) return "ok" ffD = nbNet('0.0.0.0', 40000, logic) ffD.run()
print "Alarm", eval_function, alarmRecv else: print 'alarmTotal = ', alarmTotal if (alarmStatus.get(monName, False)): alarmStatus[monName] = False alarmTotal = 0 print "Recover", eval_function, alarmRecv if __name__ == '__main__': def logic(d_in): ff(d_in) print d_in return("OK") ffD = nbNet('0.0.0.0', 50002, logic) ffD.run() # 正常:不报警的数据发送 # >>study:/home/kang>telnet 127.0.0.1 50002 # Trying 127.0.0.1... # Connected to 127.0.0.1. # Escape character is '^]'. # 00115{"MemTotal": 15888, "MemUsage": 1804, "MemFree": 14083, "Host": "teach.works", "LoadAvg": 0.15, "Time": 1434246795} # 00002OK # 报警:启动三个SSH,连发三次超阀值数据 # >>study:/home/kang/arch-5/lession08>telnet 127.0.0.1 50002 # Trying 127.0.0.1... # Connected to 127.0.0.1. # Escape character is '^]'.
sys.path.insert(1, os.path.join(sys.path[0], '..')) from nbNet import nbNet if __name__ == '__main__': def logic_pipe(d_in): HOST = '127.0.0.1' PORT = 9099 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((HOST, PORT)) s.send('%05d%s' % (len(d_in), d_in)) d_response = s.recv(7) return d_response[5:] pipe = nbNet('0.0.0.0', 9098, logic_pipe) pipe.run() # output # # 第一个终端启动pipe server # >>study: # /home / kang / arch - 5 / lession08 > python logic_pipe.py # 第二个终端启动echo server # >>study:/home/kang/arch-5/lession08>python logic_echo.py # kangc # 第三个终端连接pipe server # >>study: # /home / kang > telnet 127.0.0.1 9098 # Trying 127.0.0.1...
sys.path.insert(1, os.path.join(sys.path[0], '..')) from nbNet import nbNet if __name__ == '__main__': def logic_pipe(d_in): HOST = '127.0.0.1' PORT = 9099 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((HOST, PORT)) s.send('%05d%s' % (len(d_in), d_in)) d_response = s.recv(7) return d_response[5:] pipe = nbNet('0.0.0.0', 9098, logic_pipe) pipe.run() # output # # 第一个终端启动pipe server # >>study: # /home / kang / arch - 5 / lession08 > python logic_pipe.py # 第二个终端启动echo server # >>study:/home/kang/arch-5/lession08>python logic_echo.py # kangc # 第三个终端连接pipe server # >>study: # /home / kang > telnet 127.0.0.1 9098 # Trying 127.0.0.1... # Connected to 127.0.0.1.
alarmStatus = {} alarmNum = {} def ff(d_in): mon_data = json.loads(d_in) for rule in conf.ff_conf: monKey, operator, value, alarmRecv, num = rule monName = monKey + operator + str(value) eval_function = str(mon_data[monKey]) + operator + str(value) ff_result = eval(eval_function) if ff_result: if monName in alarmNum: alarmNum[monName] += 1 else: alarmNum[monName] = 1 if alarmNum[monName] >= num: alarmStatus[monName] = True print "Alarm" , eval_function, alarmRecv, alarmNum[monName] else: if (alarmStatus.get(monName, False)): alarmStatus[monName] = False alarmNum[monName] = 0 print "Recover", eval_function, alarmRecv print alarmStatus if __name__ == '__main__': def logic(d_in): ff(d_in) return "ok" ffD = nbNet('0.0.0.0', 40000, logic) ffD.run()
def receiveCmd(self): server = nbNet(self.host, self.port, self.cmdQueue) server.run()
def run(self): server = nbNet(self.host, self.port, transfer) server.run()