def execute(self): self._pool = Pool(config.pool_processors) self._thread_pool = ThreadPool(5) cli_stats = CliStats(self._context, self._writer) cli_stats.execute() self.clean_up_docker() logging.info(config.log_line_run_end + self._context.run_name) _flush_log_handlers() _extract_from_file(config.log_file, config.run_log, config.log_line_run_start + self._context.run_name, config.log_line_run_end + self._context.run_name) parser = Parser(self._context, self._writer) parser.execute() _collect_general_information() self._context.step_times.append( StepTimes(time.time(), 'postprocessing_end')) self._writer.write_csv(config.step_times_csv_file_name, StepTimes.csv_header, self._context.step_times) _create_report() self._pool.close() self._thread_pool.close() logging.info('Executed post processing')