Форум сайта python.su
Следующая задача.
Дано:
Есть единая система работающая на нескольких машинах, на каждой машине ведется свой журнал логов(на каждой машине его формат одинаков). Все записи идут в хронологическом порядке.
Задача: написать программу которая будет из любого количества логов создавать один, при этом сохраняя хронологический порядок и будет иметь возможность сортировки по уровню важности (например если указать в конфиге error, то будут отображаться записи только с уровнем error и выше).
В качестве аргументов должны передаваться названия файлов а вывод через stdout(консоль).
Вопрос: какой путь избрать?
http://docs.python.org/howto/logging-cookbook.html#sending-and-receiving-logging-events-across-a-network
Я склоняюсь сделать через sockethandler(способ по ссылке выше). Верно размышляю? Или есть более элегантное решение?
Отредактировано (Июль 11, 2011 14:05:10)
Офлайн
Apollo46Взять syslog-ng?
Вопрос: какой путь избрать?
Офлайн
Александр КошелевВ этом и вся соль, что надо свое написать.
Отредактировано (Июль 11, 2011 14:57:31)
Офлайн
Apollo46Что это значит? Вам решение нужно или что?
В этом и вся соль, что надо свое написать.
Офлайн
Может кто-нибудь подсказать, как лучше решить эту задачу? Пожалуйста.
Отредактировано (Июль 11, 2011 19:57:59)
Офлайн
Apollo46, я вот не понимаю, вам сессию сдать или почему не подходит вариант с сислогом, который уже все это дело умеет?
Отредактировано (Июль 12, 2011 14:41:05)
Офлайн
> Задача: написать программу которая будет из любого количества логов создавать один
> Вопрос: какой путь избрать?
> Я склоняюсь сделать через sockethandler
А при чём тут сокеты? Открываем файлы, парсим и собираем налету (без накопления в памяти) в один поток. Какой тут может быть путь? logging для протоколирования, не для последующей обработки протоколов.
..bw
Офлайн
bw
Если логи нужно анализировать в реалтайм или приближенно к этому, то использование доп. хэндлера в самый раз.
Офлайн