| 35 | |
| 36 | @rank_zero_only |
| 37 | def config_logger(final_output_dir, time_str, phase, head): |
| 38 | log_file = '{}_{}_{}.log'.format('log', time_str, phase) |
| 39 | final_log_file = final_output_dir / log_file |
| 40 | logging.basicConfig(filename=str(final_log_file)) |
| 41 | logger = logging.getLogger() |
| 42 | logger.setLevel(logging.INFO) |
| 43 | console = logging.StreamHandler() |
| 44 | formatter = logging.Formatter(head) |
| 45 | console.setFormatter(formatter) |
| 46 | logging.getLogger('').addHandler(console) |
| 47 | file_handler = logging.FileHandler(final_log_file, 'w') |
| 48 | file_handler.setFormatter(logging.Formatter(head)) |
| 49 | file_handler.setLevel(logging.INFO) |
| 50 | logging.getLogger('').addHandler(file_handler) |
| 51 | return logger |
| 52 | |
| 53 | |
| 54 | @rank_zero_only |