Monitoring publisher tenant changes
Code changes includes:
disable_monitoring_service.yaml for diabling monitoring of the service.
enable_monitoring_service.yaml for enabling monitoring of the service,
install_monitoring_ceilometer.sh for installing monitoring agent in ceilometer and compute nodes.

Change-Id: I7f8d845cc59786eb25382b51573932fc6c9e5fac
diff --git a/xos/synchronizer/ceilometer/udp_proxy/udpagent.py b/xos/synchronizer/ceilometer/udp_proxy/udpagent.py
index 81826ad..1cac784 100644
--- a/xos/synchronizer/ceilometer/udp_proxy/udpagent.py
+++ b/xos/synchronizer/ceilometer/udp_proxy/udpagent.py
@@ -39,6 +39,10 @@
         event_data = {'event_type': 'infra','message_id':six.text_type(uuid.uuid4()),'publisher_id': 'cpe_publisher_id','timestamp':datetime.datetime.now().isoformat(),'priority':'INFO','payload':msg}
         return event_data
    
+    def errback(self, exc, interval):
+        logging.error('Error: %r', exc, exc_info=1)
+        logging.info('Retry in %s seconds.', interval)
+
     def setup_rabbit_mq_channel(self):
         service_exchange = Exchange(self.acord_control_exchange, "topic", durable=False)
         # connections/channels
@@ -47,6 +51,8 @@
         channel = connection.channel()
         # produce
         self.producer = Producer(channel, exchange=service_exchange, routing_key='notifications.info')
+        self.publish = connection.ensure(self.producer, self.producer.publish, errback=self.errback, max_retries=3)
+
 
     def start_udp(self):
         address_family = socket.AF_INET
@@ -70,12 +76,16 @@
             else:
                 try:
                     if sample.has_key("event_type"):
-                         logging.debug("recevied event  :%s",sample)
-                         self.producer.publish(sample)
+                         #logging.debug("recevied event  :%s",sample)
+                         logging.debug("recevied event  :%s",sample['event_type'])
+                         #self.producer.publish(sample)
+                         self.publish(sample)
                     else:
-                         logging.debug("recevied Sample  :%s",sample)
+                         #logging.debug("recevied Sample  :%s",sample)
+                         logging.debug("recevied Sample :%s",sample['counter_name'])
                          msg = self.convert_sample_to_event_data(sample)
-                         self.producer.publish(msg)
+                         #self.producer.publish(msg)
+                         self.publish(msg)
                 except Exception:
                     logging.exception("UDP: Unable to publish msg")