Skip to content

Instantly share code, notes, and snippets.

@f4rx
Created May 31, 2018 12:09
Show Gist options
  • Select an option

  • Save f4rx/e71cf8b00562648187a62e626b7dca27 to your computer and use it in GitHub Desktop.

Select an option

Save f4rx/e71cf8b00562648187a62e626b7dca27 to your computer and use it in GitHub Desktop.
Otus Python HW_01 log analyzator
def get_all_files_and_dirs_in_dir_and_sort(dir):
files = glob.glob(dir)
files.sort()
return files
def get_log_file_for_convert(log_dir, report_dir):
if not os.path.isdir(log_dir):
logging.info("Log dir '%s' not found" % log_dir)
return
log_files = get_all_files_and_dirs_in_dir_and_sort(log_dir)
report_files = get_all_files_and_dirs_in_dir_and_sort(report_dir)
last_log_file = None
LogFile = namedtuple('LogFile', ['filename', 'date'])
for filename in log_files:
try:
log_date = get_date_from_filename(os.path.basename(filename))
except ValueError:
continue
if os.path.join(report_dir, "report-%s.%s.%s.html" % log_date) in report_files:
continue
last_log_file = LogFile(filename=filename, date=log_date)
if not last_log_file:
logging.info("Dir %s is empty or not contains log files with valid names or all logs files were parsered " %
log_dir)
return
logging.info("Working with file %r" % last_log_file.filename)
return last_log_file
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment