(self, expname, runtime_args, external_loggers=None)
| 50 | class ModelTrainerLog(): |
| 51 | |
| 52 | def __init__(self, expname, runtime_args, external_loggers=None): |
| 53 | now = datetime.datetime.fromtimestamp(time.time()) |
| 54 | self.experiment_id = \ |
| 55 | "{}_{}".format(expname, now.strftime('%Y%m%d_%H%M%S')) |
| 56 | self.filename = "{}.log".format(self.experiment_id) |
| 57 | self.logstr("# %s" % str(runtime_args)) |
| 58 | self.headers = None |
| 59 | self.start_time = time.time() |
| 60 | self.last_time = self.start_time |
| 61 | self.last_input_count = 0 |
| 62 | self.external_loggers = None |
| 63 | |
| 64 | if external_loggers is not None: |
| 65 | self.external_loggers = external_loggers |
| 66 | if not isinstance(runtime_args, dict): |
| 67 | runtime_args = dict(vars(runtime_args)) |
| 68 | runtime_args['experiment_id'] = self.experiment_id |
| 69 | runtime_args['hostname'] = socket.gethostname() |
| 70 | for logger in self.external_loggers: |
| 71 | logger.set_runtime_args(runtime_args) |
| 72 | else: |
| 73 | self.external_loggers = [] |
| 74 | |
| 75 | def logstr(self, str): |
| 76 | with open(self.filename, "a") as f: |
nothing calls this directly
no test coverage detected