Чтобы объяснить подробно, у меня есть текстовый файл, в который я записываю некоторые данные из различного числа экземпляров процесса (т.е. может быть от 4 до 16 экземпляров процесса, генерирующих журналы).
Все экземпляры записываются в один файл в следующем формате:
2018-09-07 11:34:47,251 - AppLog - INFO -
******************************************
Log Report - Consume Cycle jhTyjs-ConsumeCycle
******************************************
Uptime: 144708.62724542618s
Jobs Run: 16866
Jobs Current: 1
Q Avg Read Time: 0
Q Msgs Read: 0
Worker Load: ['1.00', '1.00', '1.00']
******************************************
2018-09-07 11:37:47,439 - AppLog - INFO -
******************************************
Log Report - Consume Cycle aftTys-ConsumeCycle
******************************************
Uptime: 144888.81490063667s
Jobs Run: 16866
Jobs Current: 1
Q Avg Read Time: 0
Q Msgs Read: 0
Worker Load: ['1.00', '1.00', '1.00']
******************************************
This is an error line which could be generated by any of the instances and can be anything, <br> like qfuigeececevwovw or wefebew efeofweffhw v wihv or any python \n exception or aiosfgd ceqic eceewfi
2018-09-07 11:40:47,615 - AppLog - INFO -
******************************************
Log Report - Consume Cycle hdyGid-ConsumeCycle
******************************************
Uptime: 145068.99103808403s
Jobs Run: 16866
Jobs Current: 1
Q Avg Read Time: 0
Q Msgs Read: 0
Worker Load: ['1.00', '1.00', '1.00']
******************************************
(в Log Report - Consume Cycle [placeholder]-ConsumeCycle
каждого журнала [placeholder]
является случайным)
Итак, мой файл состоит избольшое количество журналов в указанном формате, один за другим.Каждый экземпляр генерирует журнал каждые 3 минуты.(т. е. все экземпляры генерируют ровно один журнал за 3 минуты)
Если в каком-либо из экземпляров есть ошибка, они также регистрируют это в одном файле.Таким образом, структура данных совсем не соответствует.
Теперь я должен получить последние зарегистрированные данные, т.е. последние 3 минуты, из всех экземпляров и выполнить с ними некоторые задачи.
Есть ли способ получить данные за последние 3 минуты, записанные в файл журнала (, будь то ошибки или отличные записи в указанном выше формате )?
[ EDIT ] Добавлена строка ошибки между журналами