Как агрегировать записи журнала по времени - PullRequest
0 голосов
/ 02 ноября 2011

У меня есть огромный файл журнала, содержащий сообщения журнала с префиксом timestamp.Временная метка с точностью до микросекунд.Я хочу найти временное окно 10 секунд, когда было зарегистрировано наибольшее количество сообщений.Как ты можешь это сделать?

Ответы [ 2 ]

1 голос
/ 02 ноября 2011

Вы можете сначала объединить свои файлы журнала с интервалом в одну секунду, а затем найти в этих числах последовательность с наибольшим весом.

1 голос
/ 02 ноября 2011

Вам нужно построчно вводить в файл файл, выяснять, в каком 10-секундном периоде находится каждая временная метка, и отслеживать, какой диапазон временных меток имел наибольшее количество «членов».

Вы не делаетея не могу указать какой язык, поэтому я просто буду использовать псевдокод:

  1. читать строку
  2. извлекать / преобразовывать временную метку в номер интервала 10 с
  3. , если эта временная метказа пределами диапазона предыдущего интервала «запомните» счетчик этого интервала и запустите новый счетчик интервалов
  4. Если счетчик количества участников предыдущего интервала больше, чем последний записанный наибольший интервал, сделайте предыдущий интервал новым »наибольший "интервал"
  5. Увеличение счетчика интервалов для этой новой строки.
  6. повторяется до тех пор, пока файл не будет использован
  7. выплевывать записанный номер интервала, который будет иметь наибольшее количество членов
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...