code: def run(self):
          
          while True:
              data = self.queue.get()
              if data is None:
                  Logger.get_logger(__name__).info("Stopping collector process ...")
                  break
  
              # updating the report data
              self.store.update(data)
              # writing the report
              generate(self.store, 'html', os.getcwd())
docs: Collector main loop.