2011-06-01 2 views
15

Кто-нибудь строил или кто-нибудь знает, как построить, структуру ведения журнала, которая откладывает файлы журнала на Amazon S3?Вход в Amazon S3

Мы строим приложение SaaS, и, естественно, мы планируем иметь миллионы серверов и клиентов. Я хотел бы упростить всю структуру каротажа. В настоящий момент мы используем SLF4j для ведения журнала и Logback как фактическую реализацию каротажа.

Я думаю, что мы могли бы отказаться от другой реализации, которая будет накапливать сообщения журнала в памяти, сжимать их и затем загружать на S3. Если соединение S3 было медленным или медленным, реализация остановила файлы на диске. Подобно Facebook Scribe.

Я предполагаю, что потребуется четыре или пять дней, чтобы написать и проверить это. Если есть другая реализация, я хотел бы узнать об этом.

ответ

7

Существует плагин для fluentd, который хранит файлы на s3. (Fluentd хороший «Коллектор лог-файл»)

Подробнее об этом здесь: http://docs.fluentd.org/articles/apache-to-s3

Если соединение s3 вниз или замедлить fluentd file buffer будет буфер вывода для вас.

+0

Отличный ответ. Я не знал об этом. – ccleve

0

Я искал google для того же вопроса. Но, по-видимому, мне немного лучше. Я знаю, как зарегистрироваться на S3. Не существует готового решения.

я предлагаю что-то вроде предохранителя для s3 смонтировать системный журнал: https://github.com/s3fs-fuse/s3fs-fuse

Теперь все, что вам нужно, это установить его и в вашей системе лог-анализатора, который может быть любой из системы вне-полки, которые могут читать журналы из каталога.

Это то, что я придумал.

То, что я до сих пор ищу для реализации, - это проблема производительности такого ведения журнала на S3, поскольку у AWS есть свои проблемы. Была обсуждена установка размера блока/файла для повышения производительности и снижения расходов на чтение и запись. Надеюсь, это поможет другой потерянной душе.

+1

также, пожалуйста, посмотрите graylog2, syslog уже может стоять на диске. В последней версии Graylog2 не используется много mongoDB. будет полезно начать с него и самостоятельно написать простую задачу для сжатия и загрузки на S3 с вашего сервера graylog. – Vangel