Полезные задачи для Capistrano (получение логов)

Довольно часто возникает желание посмотреть логи работы приложения, приходиться подключаться к серверу, заходить в каталог с приложением, и смотреть логи в маленьком терминальном окне. Мне не очень хочется это делать, поэтому я написал следующую задачу для Capistrano:

task :get_logs, :role => [:app] do
  name = "blog_logs.zip"
  logs_zip = "/tmp/#{name}"

  run "rm -f #{logs_zip}"
  run "cd #{current_path}/log/ && zip -r -9 #{logs_zip} **"
  download "#{logs_zip}", "tmp/#{name}"
  run "rm -f #{logs_zip}"
end

Задача просто упаковывает все логи Rails приложения в архив и передаёт их на локальный компьютер. Для небольших логов это вполне приемлемо, а вот когда размер production.log превысит с десяток мегабайт, то думаю настанет время заняться оптимизацией (например передавать только часть production.log обрезая его с помощью команды tail)

На самом деле некоторые шаги по оптимизации размера production.log можно проделать уже сейчас, например, исключить с помощью фильтра filter_parameter_logging который находиться в application.rb те поля которые содержат большие текстовые данные.

P.S.

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

Тэги: capistrano
Будь всегда в курсе последних новостей блога подписавшись на новости
в формате RSS. Присоединяйся!
* * *

Добавить новый комментарий

Доступные BB теги

*

* (не будет опубликован)

(если есть)

  • Multi CAPTCHA Refresh2
  • *

1. Проверьте комментарий перед отправкой
2. Все комментарии проходят модерацию перед публикацией в блоге