Я установил уровень журнала конфигурации Capistrano на error
, чтобы предотвратить подробный вывод. В deploy.rb
я добавил set :log_level, :error
. Это отлично работает. Однако, когда я запускаю команды через execute
, он не печатается, поскольку он записывается под уровнем журнала DEBUG
. Как я могу получить вывод команд execute
для распечатки? Я могу использовать capture
с комбинацией puts
для вывода его, но это не помогает, когда я должен транслировать журналы.
Уровень журнала Capistrano
Ответ 1
Это можно сделать, указав следующий способ в файле deploy.rb:
def with_verbosity(verbosity_level)
old_verbosity = SSHKit.config.output_verbosity
begin
SSHKit.config.output_verbosity = verbosity_level
yield
ensure
SSHKit.config.output_verbosity = old_verbosity
end
end
Затем просто назовите его следующим образом:
with_verbosity(Logger::DEBUG) do
execute "./blah.sh"
end