Предложение по использованию Java или сценария оболочки - PullRequest
0 голосов
/ 12 февраля 2010

Одно стороннее приложение записывает данные в файл журнала. Формат данных - текстовый. Файл журнала (скажем, orig.log) создается ежедневно. Максимальный размер файла журнала составляет 1 ГБ. Требование к написанию программы

  1. Который переименует этот журнал файл (скажем, temp.log) и изменить некоторые записи согласно требованию.

  2. Программа добавит всю содержимое этого файла журнала для некоторых другой файл (скажем, Processed.log).

  3. Программа удалит файл temp.log.

  4. Программа будет похожа планировщик-должен уметь выполнять 1,2,3 через определенный промежуток времени как 15 минут / 1 час и т. д.

Подходит ли для этого java? или Shell Script? любой другой вариант? (все файлы, стороннее приложение и эта программа будут на одном компьютере).

Ответы [ 3 ]

3 голосов
/ 12 февраля 2010

Лично, если это манипулирование лог-файлом, я бы использовал perl или python. (Что касается планирования каждые 15 минут, для этого и нужен cron.)

Если «изменить некоторые записи» достаточно просто, вы, вероятно, можете объединить первые два шага в perl, python, awk или даже sed pipe.

perl foo.pl < orig.log >> Processed.log
0 голосов
/ 12 февраля 2010

Подходит ли для этого java?

Да, и это будет довольно просто, если вы им командуете.

или Shell Script?

Да, это зависит от того, с чем вы более знакомы.

любой другой вариант?

Я бы использовал другой язык программирования, так как Python уже упоминался, я бы добавил Ruby, он также хорош в этом виде.

0 голосов
/ 12 февраля 2010

Сценарий оболочки действительно хорошо подходит для этого использования.

только первый шаг mv orig.log temp.log вы можете использовать awk или sed для шага 2 и так далее

для части планирования cron может выполнить эту работу (^^)

Наконец, вы можете принять во внимание то, что вы знаете лучше всего.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...