Я хотел бы создать новый стандарт двух вещей:
как долго будут генерироваться и обновляться журналы, созданные моими приложениями?
как перенести логи на Amazon S3, в качестве резервного сервера ?.
Я думал использовать logrotate, чтобы вращать и сжимать мои ежедневные файлы следующим образом:
{filename}-{year}-{month}-{day}-{r-months}.gz
В r-months
переменные средства remain-months
, сколько месяцев файл должен оставаться в S3, более старые файлы следует удалить.
Мой друг, подай идею, что я должен compress the logs daily
(в новом формате, предложенном выше), после чего эти файлы нужно отправить в нашу корзину в Amazon S3. затем files older than 7 days should be removed by logrotate
(потому что они уже находятся в S3).
В настоящее время наши приложения используют log4j
и другие для создания журналов.
1) Должны ли мы отключить журналы версий, создаваемые нашим приложением, и обрабатывать их только с помощью logrotate?
2) Как вы думаете, это может привести к сбою какого-либо приложения?
3) Этот новый формат журнала хорош?
4) А как отправлять файлы на S3? Теперь я использую s3cmd
Вы порекомендовали мне другой инструмент?
Относительно вашего вопроса №4:
Вы можете смонтировать корзину S3 как локальный раздел и работать с файлами S3, поскольку они были расположены в файловой системе вашего сервера. Есть число из хорошо Доступны инструменты с открытым исходным кодом.
Но со своей стороны я бы порекомендовал вам взглянуть на мой проект: RioFS, файловая система в пространстве пользователя для монтирования корзин Amazon S3. Цели проекта и основные преимущества перед другими подобными инструментами: простота, скорость работы и безошибочный код.
В настоящее время проект находится в состоянии «бета», но уже довольно давно он работает на нескольких высоконагруженных файловых серверах (RioFS обеспечивает там доступ к файлам, расположенным в S3, на ftp / sftp-серверы).
Мы строим сообщество вокруг нашего проекта и ищем больше людей, которые присоединятся к нашему проекту, чтобы обсудить планы на будущее и помочь с тестированием. Со своей стороны мы предлагаем быстрое исправление ошибок и выслушаем ваши запросы о добавлении новых функций.
Краткое руководство:
Вы можете смонтировать корзину, используя следующую команду (при условии, что вы установили RioFS и экспортировали переменные среды AWSACCESSKEYID и AWSSECRETACCESSKEY):
riofs http://s3.amazonaws.com your_bucket_name /path/to/localfolder
(см. описание проекта и запустите riofs --help
чтобы получить помощь с аргументами командной строки)
Обратите внимание, что проект все еще находится в разработке, может еще остаться ряд ошибок. Если вы обнаружите, что что-то не работает должным образом: заполните отчет о проблеме на странице проекта GitHub.
Надеюсь, это поможет, и мы с нетерпением ждем встречи с вами в нашем сообществе!