#row.append(str_time) line = ';'.join((str(item) for item in row)) f.write("{}\n".format(line)) if host_based_report_keys is None: logger.warning("Host Based Report It seems the file is empty!") else: host_based_report_keys.extend(HOST_BASED_REPORT_GROUPS) #cdr_report_detail_keys.append("report_time") f.seek(0) #print (host_based_report_keys) #self.cursor.copy_from(f, 'host_based_report', columns=host_based_report_keys, sep=';', null='NULL') #logger.info("The host based report file [{}] is imported successfully!".format(walk_path)) if __name__ == "__main__": logger = Helper.create_logger('cdr_report') parser = argparse.ArgumentParser(description="CDR Report") parser.add_argument("-r", '--run', action='store', dest='run_type', help='Run type', choices={'auto', 'manual','dup_data'}, default='auto') parser.add_argument("-s", "--start", action="store", dest='start_time', help="Start time") parser.add_argument("-e", "--end", action="store", dest='end_time', help="End time") args = parser.parse_args() if args.run_type == 'auto': logger.info("Begin to perform automatically") start_time = datetime.datetime.now() - datetime.timedelta(hours=1) end_time = datetime.datetime.now() - datetime.timedelta(hours=1) lock_file = os.path.join(os.path.dirname(__file__), 'cdr_report.lock') handle = open(lock_file, "wb") while(1): try: fcntl.flock(handle, fcntl.LOCK_EX | fcntl.LOCK_NB)