From 4d38bad842e5b957fdc1cf95adc682dd49170169 Mon Sep 17 00:00:00 2001 From: Peng Xiao Date: Tue, 1 Nov 2016 14:24:59 +0800 Subject: [PATCH] change yabmp default running mode is standalone Signed-off-by: Peng Xiao --- yabmp/core/protocol.py | 7 ++++--- yabmp/server.py | 4 +++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/yabmp/core/protocol.py b/yabmp/core/protocol.py index 3d7bd81..0026f7d 100644 --- a/yabmp/core/protocol.py +++ b/yabmp/core/protocol.py @@ -194,15 +194,16 @@ def write_msg_file(self, msg_type, msg): self.bgp_peer_dict[peer_ip]['file'].write(str(msg_list) + '\n') self.bgp_peer_dict[peer_ip]['msg_seq'] += 1 self.bgp_peer_dict[peer_ip]['file'].flush() - self.channel.send_message(exchange='', message={'type': 7, 'mst_type': 2, 'peer_ip': peer_ip}) + if self.channel: + self.channel.send_message(exchange='', message={'type': 7, 'mst_type': 2, 'peer_ip': peer_ip}) elif msg_type == 3: # peer up message msg_list = [time.time(), self.bgp_peer_dict[peer_ip]['msg_seq'], 1, msg[1]['received_open_msg'], (0, 0)] self.bgp_peer_dict[peer_ip]['file'].write(str(msg_list) + '\n') self.bgp_peer_dict[peer_ip]['msg_seq'] += 1 self.bgp_peer_dict[peer_ip]['file'].flush() - self.channel.send_message() - self.channel.send_message(exchange='', message={'type': 7, 'msg_type': 3, 'peer_ip': peer_ip}) + if self.channel: + self.channel.send_message(exchange='', message={'type': 7, 'msg_type': 3, 'peer_ip': peer_ip}) @staticmethod def get_last_seq(file_name): diff --git a/yabmp/server.py b/yabmp/server.py index 5af8b45..cce5ed6 100644 --- a/yabmp/server.py +++ b/yabmp/server.py @@ -57,13 +57,15 @@ def prepare_service(args=None): sys.exit() # start bmp server and rabbitmq connection try: - standalone = os.environ.get("YABMP_STANDALONE", False) + standalone = os.environ.get("YABMP_STANDALONE", True) if not standalone: # rabbitmq factory LOG.info('Try to connect to rabbitmq server') url = os.environ.get('RABBITMQ_URL', 'amqp://guest:guest@localhost:5672/%2F') rabbit_mq_factory = PikaFactory(url=url, routing_key='%s:%s' % (CONF.bmp.bind_host, CONF.bmp.bind_port)) rabbit_mq_factory.connect() + else: + rabbit_mq_factory = None reactor.listenTCP( CONF.bmp.bind_port, BMPFactory(msg_path=CONF.bmp.write_dir, rabbit_mq_factory=rabbit_mq_factory),