fix ryu rest api, use requests iso urllib2
diff --git a/src/emuvim/dcemulator/monitoring.py b/src/emuvim/dcemulator/monitoring.py
index 2c07ab5..ba04771 100755
--- a/src/emuvim/dcemulator/monitoring.py
+++ b/src/emuvim/dcemulator/monitoring.py
@@ -27,6 +27,7 @@
 """

 

 import logging

+import sys

 from mininet.node import  OVSSwitch

 import ast

 import time

@@ -358,7 +359,13 @@
 

                 # query Ryu

                 ret = self.net.ryu_REST('stats/flow', dpid=flow_dict['switch_dpid'], data=data)

-                flow_stat_dict = ast.literal_eval(ret)

+                if isinstance(ret, dict):

+                    flow_stat_dict = ret

+                elif isinstance(ret, basestring):

+                    flow_stat_dict = ast.literal_eval(ret.rstrip())

+                else:

+                    flow_stat_dict = None

+

                 logging.debug('received flow stat:{0} '.format(flow_stat_dict))

 

                 self.set_flow_metric(flow_dict, flow_stat_dict)

@@ -447,13 +454,6 @@
         previous_monitor_time = metric_dict['previous_monitor_time']

         cookie = metric_dict['cookie']

 

-        # TODO aggregate all found flow stats

-        #flow_stat = flow_stat_dict[str(switch_dpid)][0]

-        #if 'bytes' in metric_key:

-        #    counter = flow_stat['byte_count']

-        #elif 'packet' in metric_key:

-        #    counter = flow_stat['packet_count']

-

         counter = 0

         for flow_stat in flow_stat_dict[str(switch_dpid)]:

             if 'bytes' in metric_key:

@@ -467,7 +467,10 @@
         self.prom_metrics[metric_dict['metric_key']]. \

             labels({'vnf_name': vnf_name, 'vnf_interface': vnf_interface, 'flow_id': cookie}). \

             set(counter)

-        pushadd_to_gateway(self.pushgateway, job='sonemu-SDNcontroller', registry=self.registry)

+        try:

+            pushadd_to_gateway(self.pushgateway, job='sonemu-SDNcontroller', registry=self.registry)

+        except Exception, e:

+            logging.warning("Pushgateway not reachable: {0} {1}".format(Exception, e))

 

 

     def start_Prometheus(self, port=9090):