Add option to specify logfile location

This commit is contained in:
Serene-Arc
2021-04-27 12:29:37 +10:00
parent 3bc10ce1aa
commit cb41d4749a
4 changed files with 41 additions and 19 deletions

View File

@@ -20,6 +20,7 @@ _common_options = [
click.option('-m', '--multireddit', multiple=True, default=None, type=str),
click.option('-L', '--limit', default=None, type=int),
click.option('--authenticate', is_flag=True, default=None),
click.option('--log', type=str, default=None),
click.option('--submitted', is_flag=True, default=None),
click.option('--upvoted', is_flag=True, default=None),
click.option('--saved', is_flag=True, default=None),

View File

@@ -17,6 +17,7 @@ class Configuration(Namespace):
self.exclude_id_file = []
self.limit: Optional[int] = None
self.link: list[str] = []
self.log: Optional[str] = None
self.max_wait_time = None
self.multireddit: list[str] = []
self.no_dupes: bool = False

View File

@@ -190,7 +190,12 @@ class RedditDownloader:
def _create_file_logger(self):
main_logger = logging.getLogger()
log_path = Path(self.config_directory, 'log_output.txt')
if self.args.log is None:
log_path = Path(self.config_directory, 'log_output.txt')
else:
log_path = Path(self.args.log).resolve().expanduser()
if not log_path.parent.exists():
raise errors.BulkDownloaderException(f'Designated location for logfile does not exist')
backup_count = self.cfg_parser.getint('DEFAULT', 'backup_log_count', fallback=3)
file_handler = logging.handlers.RotatingFileHandler(
log_path,