2012-06-21 8 views
1

Мы запускаем Java-проект, который создает много сообщений журнала, используя log4j, которые в настоящее время хранятся в обычных файлах файловой системы. Поскольку проект работает на нескольких серверах, мы предпочли бы, чтобы один экземпляр отправлял журналы до дальнейшей обработки. Поскольку мы уже запускаем JVM на серверах, мы думали об использовании для этого kestrel.Log4j to kestrel

Будучи новым как для log4j, так и для пустельги, нам интересно, есть ли способ настроить log4j так, чтобы он напрямую записывал пустельгу, установленную на том же сервере?

ответ

2

Для вашего случая использования (помещение журналов в централизованное местоположение) я бы использовал что-то другое, кроме пустельги.

Kafka - проект инкубатора Apache, созданный в Linkedin. У Kafka есть удивительное приложение Log4j, в котором вы просто указываете приложение в файле log4j.properties.

Flume - еще одна отличная программа для сбора журналов. Где Kafka похожа на очередь сообщений, где вы читаете строки журнала с очереди и обрабатываете их, Flume просто выгружает ваши журналы на центральном сервере или в S3 или Hadoop. У Flume также есть приложение log4j.

+0

Большое спасибо, я дам как попытку, так и отчет после этого. – Thomas