Я использую эту функцию в своем коде для возврата строк, которые я хочу получить от чтения файла журнала, я хочу выполнить grep для процесса "exim" и вернуть результаты, но выполнение кода не дает ошибок, но вывод ограничен в три строки, как я могу просто получить вывод, связанный только с exim-процессом ..
#output:
{'date': '13', 'process': 'syslogd', 'time': '06:27:33', 'month': 'May'}
{'date': '13', 'process': 'exim[23168]:', 'time': '06:27:33', 'month': 'May'}
{'May': ['syslogd']}
#function:
def generate_log_report(logfile):
report_dict = {}
for line in logfile:
line_dict = dictify_logline(line)
print line_dict
try:
month = line_dict['month']
date = line_dict['date']
time = line_dict['time']
#process = line_dict['process']
if "exim" in line_dict['process']:
process = line_dict['process']
break
else:
process = line_dict['process']
except ValueError:
continue
report_dict.setdefault(month, []).append(process)
return report_dict