def __init__(self): """Create a new GRRClientWorker.""" super(GRRClientWorker, self).__init__() # Queue of messages from the server to be processed. self._in_queue = [] # Queue of messages to be sent to the server. self._out_queue = [] # A tally of the total byte count of messages self._out_queue_size = 0 self._is_active = False # Last time when we've sent stats back to the server. self.last_stats_sent_time = 0 self.proc = psutil.Process(os.getpid()) # Use this to control the nanny transaction log. self.nanny_controller = client_utils.NannyController() self.nanny_controller.StartNanny() if not GRRClientWorker.stats_collector: GRRClientWorker.stats_collector = client_stats.ClientStatsCollector( self) GRRClientWorker.stats_collector.start() self.lock = threading.RLock()
def __init__(self): """Create a new GRRClientWorker.""" super(GRRClientWorker, self).__init__() # Queue of messages from the server to be processed. self._in_queue = [] # Queue of messages to be sent to the server. self._out_queue = [] # A tally of the total byte count of messages self._out_queue_size = 0 self._is_active = False # If True, ClientStats will be forcibly sent to server during next # CheckStats() call, if less than STATS_MIN_SEND_INTERVAL time has passed # since last stats notification was sent. self._send_stats_on_check = False # Last time when we've sent stats back to the server. self.last_stats_sent_time = None self.proc = psutil.Process(os.getpid()) # We store suspended actions in this dict. We can retrieve the suspended # client action from here if needed. self.suspended_actions = {} # Use this to control the nanny transaction log. self.nanny_controller = client_utils.NannyController() self.nanny_controller.StartNanny() if not GRRClientWorker.stats_collector: GRRClientWorker.stats_collector = client_stats.ClientStatsCollector( self) GRRClientWorker.stats_collector.start() self.lock = threading.RLock()
def __init__(self): self.responses = [] self.sent_bytes_per_flow = {} self.lock = threading.RLock() self.stats_collector = client_stats.ClientStatsCollector(self)
def __init__(self, *args, **kw): super(FakeMixin, self).__init__(*args, **kw) self.responses = [] self.sent_bytes_per_flow = {} self.lock = threading.RLock() self.stats_collector = client_stats.ClientStatsCollector(self)