def logfile_view(request, logfile_id, template_name='logfile.html'): """Returns a list of Log File content parsed by main regexp""" page = request.GET.get('page') if not page: page = 1 else: try: page = int(page) except ValueError: page = 1 pass manager = LogFilesManager() files_list = manager.list_logfiles(LOG_FILES_DIR) try: filename = files_list[int(logfile_id)] except Exception: return HttpResponseBadRequest() logfile = os.path.join(LOG_FILES_DIR, files_list[int(logfile_id)]) log_file_object = manager.get_file(logfile) fake_log_file_lines = manager.get_file_lines_count(log_file_object) paginator = Paginator(fake_log_file_lines, LOG_FILES_PAGINATE_LINES) paginated_lines = paginator.page(page) first_line = paginated_lines.object_list[0] current_file_dict = manager.parse_log_file(logfile, first_line) paginated_lines.object_list = current_file_dict header_list = manager.compile_header_from_regexp() context = { 'header_list': header_list, 'file_name': filename, 'file_id': logfile_id, 'paginator': paginated_lines, 'page': page, } return render_to_response(template_name, context)
def logfile_view(request, logfile_id, template_name='logfile.html'): """Returns a list of Log File content parsed by main regexp""" page = request.GET.get('page') if not page: page = 1 else: try: page = int(page) except ValueError: page = 1 pass manager = LogFilesManager() files_list = manager.list_logfiles(LOG_FILES_DIR) try: filename = files_list[int(logfile_id)] except Exception: return HttpResponseBadRequest() logfile = os.path.join(LOG_FILES_DIR, files_list[int(logfile_id)]) log_file_object = manager.get_file(logfile) fake_log_file_lines = manager.get_file_lines_count(log_file_object) paginator = Paginator(fake_log_file_lines, LOG_FILES_PAGINATE_LINES) paginated_lines = paginator.page(page) first_line = paginated_lines.object_list[0] current_file_dict = manager.parse_log_file(logfile, first_line) paginated_lines.object_list = current_file_dict header_list = manager.compile_header_from_regexp() context = { 'header_list': header_list, 'file_name': filename, 'file_id': logfile_id, 'paginator': paginated_lines, 'page': page, } return render_to_response(template_name, context)