FileLoggerBackend

class composer.loggers.file_logger.FileLoggerBackend(filename: str = 'stdout', *, buffer_size: int = 1, log_level: composer.core.logging.logger.LogLevel = LogLevel.EPOCH, every_n_epochs: int = 1, every_n_batches: int = 1, flush_every_n_batches: int = 1, config: Optional[Dict[str, Any]] = None)[source]

Bases: composer.core.logging.base_backend.RankZeroLoggerBackend

Logs to a file or to the terminal.

Example output:

[FIT][step=2]: { "logged_metric": "logged_value", }
[EPOCH][step=2]: { "logged_metric": "logged_value", }
[BATCH][step=2]: { "logged_metric": "logged_value", }
[EPOCH][step=3]: { "logged_metric": "logged_value", }
Parameters
  • filename (str, optional) – File to log to. Can be a filepath, stdout, or stderr. (default: stdout)

  • buffer_size (int, optional) – Buffer size. See open(). (default: 1 for line buffering)

  • log_level (LogLevel, optional) – Maximum LogLevel. to record. (default: EPOCH)

  • every_n_epochs (int, optional) – Frequency to print EPOCH logs. (default: 1)

  • every_n_batches (int, optional) – Frequency to print BATCH logs. (default: 1)

  • flush_every_n_batches (int, optional) – How frequently to flush the log to the file. (default: 1)

batch_end(state: State, logger: Logger) None[source]

Called on the BATCH_END event.

Parameters
  • state (State) – The global state.

  • logger (Logger) – The logger.