Unverified Commit cf2f14d0 authored by Rui Xu's avatar Rui Xu Committed by GitHub
Browse files

[Feature] Add file mode for logger (#808)

* add file mode for logger

* add more docs and comments
parent 93980b4b
......@@ -5,7 +5,7 @@ import torch.distributed as dist
logger_initialized = {}
def get_logger(name, log_file=None, log_level=logging.INFO):
def get_logger(name, log_file=None, log_level=logging.INFO, file_mode='w'):
"""Initialize and get a logger by name.
If the logger has not been initialized, this method will initialize the
......@@ -21,6 +21,8 @@ def get_logger(name, log_file=None, log_level=logging.INFO):
log_level (int): The logger level. Note that only the process of
rank 0 is affected, and other processes will set the level to
"Error" thus be silent most of the time.
file_mode (str): The file mode used in opening log file.
Defaults to 'w'.
Returns:
logging.Logger: The expected logger.
......@@ -45,7 +47,10 @@ def get_logger(name, log_file=None, log_level=logging.INFO):
# only rank 0 will add a FileHandler
if rank == 0 and log_file is not None:
file_handler = logging.FileHandler(log_file, 'w')
# Here, the default behaviour of the official logger is 'a'. Thus, we
# provide an interface to change the file mode to the default
# behaviour.
file_handler = logging.FileHandler(log_file, file_mode)
handlers.append(file_handler)
formatter = logging.Formatter(
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment