From 2e642bc84814b1a356a45d193658e676246a6b6d Mon Sep 17 00:00:00 2001 From: "Steve L. Nyemba" Date: Mon, 14 Aug 2017 00:35:56 -0500 Subject: [PATCH] DC - working with remote object,configured on the basis of the plan --- requirements.txt | 6 +++++ src/data-collector.py | 48 ++++++++++++++++++++++++++--------- src/utils/agents/manager.pyc | Bin 0 -> 3622 bytes src/utils/transport.pyc | Bin 0 -> 21410 bytes 4 files changed, 42 insertions(+), 12 deletions(-) create mode 100644 src/utils/agents/manager.pyc create mode 100644 src/utils/transport.pyc diff --git a/requirements.txt b/requirements.txt index b7bb58c..4fba40d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,20 +1,26 @@ aniso8601==1.2.0 +certifi==2017.7.27.1 +chardet==3.0.4 click==6.6 couchdbkit==0.6.5 Flask==0.11.1 Flask-Session==0.3.0 Flask-SocketIO==2.8.2 http-parser==0.8.3 +idna==2.5 itsdangerous==0.24 Jinja2==2.8 MarkupSafe==0.23 +ngram==3.3.0 numpy==1.11.3 pika==0.10.0 python-dateutil==2.6.0 python-engineio==1.1.0 python-socketio==1.6.2 pytz==2016.10 +requests==2.18.3 restkit==4.2.2 six==1.10.0 socketpool==0.5.3 +urllib3==1.22 Werkzeug==0.11.11 diff --git a/src/data-collector.py b/src/data-collector.py index 51508a1..0c3cbd2 100644 --- a/src/data-collector.py +++ b/src/data-collector.py @@ -7,9 +7,9 @@ from utils.params import PARAMS as SYS_ARGS import requests import pickle +import json from threading import Thread, RLock ENDPOINT="https://dev.the-phi.com/monitor" - class Collector(Thread) : def __init__(self): Thread.__init__(self) @@ -20,20 +20,44 @@ class Collector(Thread) : @param id node identifier """ + for id in ['apps','folders']: + if id in SYS_ARGS : + SYS_ARGS[id] = SYS_ARGS[id].split(',') scope=list(set(['apps','folders','sandbox'])& set(SYS_ARGS.keys())) - headers = {"key":SYS_ARGS["key"],"id":SYS_ARGS["id"],"scope":scope} - r = requests.get("https://the-phi.com/monitor/init",headers=headers) - self.pool = pickle.loads(r.text) + headers = {"key":SYS_ARGS["key"],"id":SYS_ARGS["id"],"scope":json.dumps(scope)} + headers['content-type'] = 'application/json' + try: + r = requests.post("https://the-phi.com/monitor/init/collector",headers=headers,data=json.dumps(SYS_ARGS)) + + r = json.loads(r.text) + + self.monitor = pickle.loads(r[0]) + self.monitor.lock = RLock() + #:w + #self.monitor.set('lock',RLock()) + except Exception,e: + print e.message + self.monitor = None def run(self): - for key in self.pool : - try: - p = self.pool[key] - p.init(SYS_ARGS[key]) - p.start() - except Exception,e: - print e + """ + This funtion runs the authorized features and + """ + #self.monitor.start() + thread = Thread(target=self.monitor.run) + thread.start() + # print self.monitor.config['store'] + # for agent in self.pool : + # try: + # agent = pickle.loads(agent) + # agent.start() + + # #p = pickle.loads(self.pool[key]) + # #p.init(SYS_ARGS[key].split(',')) + # #p.start() + # except Exception,e: + # print e -if name == '__main__' : +if __name__ == '__main__' : thread = Collector() thread.start() \ No newline at end of file diff --git a/src/utils/agents/manager.pyc b/src/utils/agents/manager.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e71f7dfa3ba5f6904d4d650d7f4b2fb0b01183d8 GIT binary patch literal 3622 zcmb_fOK%)S5U!qmc{X+)P6)AhWG=vhNS23q2t@&s@JIkB8XHBi1gptR+uQ5ene}v! z?V#NQGFJ}#1AYQG{stFL+&Lq`fg5~Py_@91g?QK7Q{7Wt^;LD(*X_oiE8X&~AMT|z z|1|LYAR@9e2pRqq?mc+i{Ewj(8K^tZu9~O>pN)h`Q!Z_KRis}q{7+$*avrc@<3wU*A-{w1lwVsq#lCeu7ElX!AXLrL<0$aL%^&H zOm_zFZzL|+DC;WKA15gsd+Xa?7Uh_c9|LM$%)!7Qyun}O4OlOEZi7`z*rvIs|~l z@~?58eJAi8#DF&q-wCAC^qmGld4!GFqP0&xWx2_vzy-I_Ys2KakEqPF2$QnR9gnAF zv2Au7Biq#vBwCAw(>;#cF)EYAC-I0+aU+|6=UF7IwzBe%5|&gu_88K{x#yL=zRB zc0yW%2cCMwuFe6sB)r}r6w*47RHw?qg zp|KIFU|436DeOe2E^XJW&ZVjdd%Ce=|1&((pk8l!-PzoK-} zPHBpr2&xBVwF|4V1BcE{?0fw_W?Y&K&E>QlgBG!`(elP!Fr!reP$wA(P>P_&c0Y^Y zr8vM_W?##}fgB_m*v;S_nJcWp6_V*Z@l}(Xv2k+R_##TniFQmduS!P6NTv5`ZJqbD zqn$4&-tHq?7BVj{lgvtqI(_H_QjXMeeU6hud78qB>Wz;+|L~qjpWpoA=B9T$$&HhG zmB`>@9V8|vp)XT5R9Cqmt7M8SrFb+>k44~M<7c5M3UXvTd09(ZFT$v0%hYPCi)uBv zq*m2ysvm?ZRBaUbGwSt6XAgsw5`Pf_w&+NXAKt7ebCf))utY7OD@QQ8^CQ!r`aE5{ z#ymfM3C*#dK^+)07Kek$-hwE{HmR=1&%DJ7g8%Swipow4WJS-QRzXX1{GNK&aE)05 zGd(ug!9bG^-%wcn$|^nrmgpVOoj=oNjRF)cB~) zBmk0Nxg#=eB_WN#U0?~MGo&3HmO!^e*zmKE$Fr{R;@`q|ZJ4`Avo5*rf@y`O-kx^p zdry47@Vo*}+F}4!PcRq3vn=2WjZQLcfq%iLps*tfX5cv}onjti7^g9)6c3%D>?BQb z)jLJgkX6M7UaX42y>IERJ4>T;GEFgbwRer~%JIiHfOTKDe4T*|X556q9S+Df(9y!cR>SS_Wrn`bEN%v|~>6rJJkPGP9 zB}MAtZ0EHd%8rlUU|z_|T90=!s$G$oL)f;uUV*U5pQq7D@V(6N%4qU9fG-d89^LomEe% zGvJV}TE;gFn(DMj7r-jZs^4q}%q?ftd1&<*yX0&z;5*)6Ai)j><1(vrbYsp!%$JN< zG9xR=r-EO$TaX@wA=3Z7eaFmEoN3E@p{>GB*bD=-=fj3~!7u0Vwrhvu6!0+Q?`EZq zBgpYJZe-K)E|Z)7Wmn;do|Ki7#h?Et5I@hF?DUudkThQLiMtxWuH`GD&;2siz^})@ DC-d7M literal 0 HcmV?d00001 diff --git a/src/utils/transport.pyc b/src/utils/transport.pyc new file mode 100644 index 0000000000000000000000000000000000000000..20a22bb617c1498a7fcf5d20df38bd82ea28d12b GIT binary patch literal 21410 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