def quit_handler(): server.stop() pool.kill() agg.flush() # create pool of greenlets pool = gevent.pool.Pool() agg = Aggregator(args.mode) print('Starting graphite-agg server on port %d' % args.port, file=sys.stderr) server = StreamServer(('0.0.0.0', args.port), connection_handler) # spawn streaming server in our pool server.set_spawn(pool) server.start() pool.spawn(flush_loop) gevent.signal(signal.SIGTERM, quit_handler) try: pool.join() except KeyboardInterrupt: quit_handler()
def start_up(self): r = self.listener(name=self.dest, host=self.host,port=self.port) s = StreamServer((self.host, self.port), r.connected) s.set_spawn(None) r._init2(s, self.connector)