def __init__(self): self._fs = fs_client.FleetspeakConnection( version=config.CONFIG["Source.version_string"]) self._sender_queue = queue.Queue( maxsize=GRRFleetspeakClient._SENDER_QUEUE_MAXSIZE) self._threads = {} if platform.system() == "Windows": internal_nanny_monitoring = False heart_beat_cb = self._fs.Heartbeat else: # TODO(amoser): Once the Fleetspeak nanny functionality is # production ready, change this to # internal_nanny_monitoring=False # heart_beat_cb=self._fs.Heartbeat internal_nanny_monitoring = True heart_beat_cb = None # The client worker does all the real work here. # In particular, we delegate sending messages to Fleetspeak to a separate # threading.Thread here. self._threads["Worker"] = comms.GRRClientWorker( out_queue=_FleetspeakQueueForwarder(self._sender_queue), heart_beat_cb=heart_beat_cb, internal_nanny_monitoring=internal_nanny_monitoring, client=self) self._threads["Foreman"] = self._CreateThread(self._ForemanOp) self._threads["Sender"] = self._CreateThread(self._SendOp) self._threads["Receiver"] = self._CreateThread(self._ReceiveOp)
def setUp(self): super(GRRClientWorkerTest, self).setUp() # GRRClientWorker starts a stats collector thread that will send replies # shortly after starting up. Those replies interfere with the test below so # we disable the ClientStatsCollector thread here. with utils.Stubber(comms.GRRClientWorker, "StartStatsCollector", lambda self: None): self.client_worker = comms.GRRClientWorker( internal_nanny_monitoring=False)
def __init__(self): self._fs = fs_client.FleetspeakConnection( version=config.CONFIG["Source.version_string"]) self._sender_queue = Queue.Queue( maxsize=GRRFleetspeakClient._SENDER_QUEUE_MAXSIZE) self._threads = {} # The client worker does all the real work here. # In particular, we delegate sending messages to Fleetspeak to a separate # threading.Thread here. self._threads["Worker"] = comms.GRRClientWorker( out_queue=_FleetspeakQueueForwarder(self._sender_queue), start_worker_thread=False, heart_beat_cb=self._fs.Heartbeat, client=self) self._threads["Foreman"] = self._CreateThread(self._ForemanOp) self._threads["Sender"] = self._CreateThread(self._SendOp) self._threads["Receiver"] = self._CreateThread(self._ReceiveOp)
def setUp(self): super(GRRClientWorkerTest, self).setUp() self.client_worker = comms.GRRClientWorker()