コード例 #1
0
ファイル: manager_cmd.py プロジェクト: tbleiker/StreamBug
def main():
    global cmd_client
    global cmd_server

    zeromq_context = zmq.Context()

    # get configuration
    name = str(config.get('main', 'name'))
    address = config.get('main', 'address')
    port_pull = config.getint('main', 'port-pull')
    port_pub = config.get('main', 'port-pub')
    port_api = config.get('main', 'port-api')

    if not name:
        log.error('Name not specified in configuration file.')
        exit(1)
    name_api = '{name}-api'.format(name=name)

    # start command server
    cmd_server = cmd_interface.Server(zeromq_context, address, port_pull,
                                      port_pub)
    cmd_server.start()

    # start command client for api
    cmd_client = cmd_interface.Client(name_api, 'commander', zeromq_context,
                                      address, port_pull, port_pub)
    cmd_client.start()

    # start api
    app.run(host=address, port=int(port_api))
コード例 #2
0
ファイル: manager_proxy.py プロジェクト: tbleiker/StreamBug
def main():
    zeromq_context = zmq.Context()

    # get configuration
    name = str(config.get('main', 'name'))
    address = config.get('main', 'address')
    port = config.getint('main', 'port')
    address_sub = config.get('data', 'address-sub')
    port_sub = config.get('data', 'port-sub')

    queue = multiprocessing.Queue()
    proxy_in = worker_forwarders.ZeromqSub('ZeromqSub', queue, zeromq_context,
                                           address_sub, port_sub)
    proxy_in.start()

    thread = threading.Thread(target=background_thread, args=(queue,))
    thread.setDaemon(True)
    try:
        thread.start()
    except KeyboardInterrupt:
        pass

    # start websockets
    try:
        socketio.run(app, host=address, port=int(port), debug=False)
    except KeyboardInterrupt:
        pass
コード例 #3
0
ファイル: manager_daq.py プロジェクト: tbleiker/StreamBug
def main():
    manager = DAQ()
    zeromq_context = zmq.Context()

    # get configuration
    name = config.get('main', 'name')
    address = config.get('cmd-server', 'address')
    port_in = config.getint('cmd-server', 'port-in')
    port_out = config.get('cmd-server', 'port-out')

    # create command client, add functions and start it
    cmd_client = cmd_interface.Client(name, 'follower', zeromq_context,
                                      address, port_in, port_out)
    cmd_client.add_command('status', manager.status)
    cmd_client.add_command('info', manager.info)
    cmd_client.add_command('start', manager.start)
    cmd_client.add_command('stop', manager.stop)

    cmd_client.start()
    cmd_client.join()

    # cleanup manager
    manager.cleanup()