Как записать статистические данные в скользящие файлы в Java - PullRequest
2 голосов
/ 04 января 2012

Я хотел бы создать скользящие файлы, которые содержат статистические данные о моем сервисе. например, регистрация каждого запроса, содержащего параметр X, с определенным набором результатов. Я должен написать эти файлы для соответствия другим системным статистическим данным:

  • Катить файл каждые полчаса
  • Каждый файл должен иметь заголовки столбцов
  • Я должен следовать строгому соглашению об именах файлов, например tracking.display.1314116577.done

Мой сервис написан на Java.

Поскольку мне нужно накатывать файлы, использование логгеров кажется хорошим направлением, поэтому я попробовал подход, при котором я бы регистрировал данные с помощью логбэка (мой выборный логгер), но обычный аппликатор прокручиваемых файлов не может выполнять роль файла каждый полчаса (или я ошибаюсь?), не может добавлять заголовки столбцов и имеет собственное строгое соглашение об именах. Я пытался написать свою собственную RollingPolicy, но не могу найти достаточно ресурсов или примеров того, как это делается.

Может кто-нибудь показать / направить меня, как это сделать? Если нет, вы бы порекомендовали другой подход?

Спасибо!

Ответы [ 2 ]

2 голосов
/ 04 января 2012

Да, вы можете сделать это с помощью приложения входа в систему.

Посмотрите на TimeBasedRollingPolicy из RollingFileAppender вы можете легко свернуть файл каждые полчаса.

Чтобы написать заголовок, вы можете расширить RollingFileAppender и добавить заголовок в зависимости от ваших потребностей.

0 голосов
/ 04 января 2012

Очень тупой ответ: правильное ведение журнала стоит много времени. Так что проще реализовать собственный регистратор с нуля. Кажется, у вас очень жесткие требования. Например, этот «.done» - вы, вероятно, сначала напишите его как «.part», а затем переименуете, когда закончите.

...