Парсинг Apache Tomcat Accesslog с Java - PullRequest
2 голосов
/ 21 января 2011

Каков наилучший способ анализа файла доступа apache с использованием java?

Будет ли он использовать stringtokenizer или есть какие-либо библиотеки 3-ей части, специально предназначенные для анализа файлов журнала apache?

Ответы [ 5 ]

1 голос
/ 18 марта 2012

Внутри этого проекта github вы найдете класс с именем LogParser, который охватывает некоторые форматы журнала доступа.Кроме того, все процессы выполняются с помощью Hadoop, что означает, что вы сможете параллельно анализировать большие объемы журнала доступа с помощью стандартного оборудования.

1 голос
/ 21 января 2011

ИМХО, StringTokenizer слишком глуп для чего-либо, а сторонняя библиотека может быть излишним для чего-то столь же простого, как это. Я бы написал простое регулярное выражение, при условии, что оно не критично и работает под моим контролем. Для http://www.google.com/search?q=Parsing+apache+tomcat+access+log, имеется 280 тыс. Совпадений, и первые две, похоже, являются свободными библиотеками.

0 голосов
/ 27 января 2013

Взгляните на [Web Log Analyzer] http://code.google.com/p/web-log-analyzer/

0 голосов
/ 21 января 2011

Нет библиотек 3-й части, специализирующихся на разборе файлов журнала Tomcat. Тем не менее, вы многое можете сделать сами:

  1. Определите характеристики вашего файла журнала и необходимый формат клапана
  2. Определите действия, которые необходимо обработать (доступ к журналу, действия распорок и т. Д.)
  3. Прочитать в строках файла журнала и разделить их (т.е. oneLine.split(" ", 0);)
  4. Храните необходимые компоненты в базе данных, если хотите. БД даст вам много свободы.

И вы готовы к работе!

С вращающимися лог-файлами легче работать. У тебя их будет много, но поменьше. Отфильтруйте все ненужные строки.

Синтаксический анализ зависит от шаблона, который вы используете в server.xml.

Сложное решение будет считывать шаблон клапана из файла server.xml и знать, как его анализировать.

0 голосов
/ 21 января 2011

Взгляните на JMeter's TCLogParser [ javadocs | источник ].На самом деле он предназначен для использования внутри JMeter, но вы можете проверить источник и изменить его для своих собственных нужд.

...