2014-10-29 3 views
1

Я использую Hiera (рубиновая библиотека, а не инструмент командной строки или марионеточная интеграция) для извлечения данных из существующего набора Yiera Yiera (который мы используем для марионетки) для использования в Capistrano , Я могу получить эту работу, как предполагалось ... но я не могу избавиться от отладочный вывод, что, кажется, по умолчанию:Отключить ведение журнала отладки Hiera

$ sudo cap deploy 
WARN: 2014-10-29 12:17:09 +0000: Not using Hiera::Puppet_logger. It does not report itself to be suitable. 
WARN: 2014-10-29 12:17:09 +0000: Cannot load backend puppet: cannot load such file -- hiera/backend/puppet_backend 
DEBUG: 2014-10-29 12:17:09 +0000: Hiera YAML backend starting 
DEBUG: 2014-10-29 12:17:09 +0000: Looking up package_repo_base in YAML backend 
DEBUG: 2014-10-29 12:17:09 +0000: Looking for data source environments/PROD/LDN 
DEBUG: 2014-10-29 12:17:09 +0000: Looking for data source regions/LDN 
DEBUG: 2014-10-29 12:17:09 +0000: Cannot find datafile /etc/customer/hieradata/regions/LDN.yaml, skipping 
DEBUG: 2014-10-29 12:17:09 +0000: Looking for data source environments/PROD 
DEBUG: 2014-10-29 12:17:09 +0000: Looking for data source common 
DEBUG: 2014-10-29 12:17:09 +0000: Found package_repo_base in common 
WARN: 2014-10-29 12:17:09 +0000: Not using Hiera::Puppet_logger. It does not report itself to be suitable. 
WARN: 2014-10-29 12:17:09 +0000: Cannot load backend puppet: cannot load such file -- hiera/backend/puppet_backend 
DEBUG: 2014-10-29 12:17:09 +0000: Looking up puppet_deploy_base in YAML backend 
DEBUG: 2014-10-29 12:17:09 +0000: Looking for data source environments/PROD/LDN 
DEBUG: 2014-10-29 12:17:09 +0000: Looking for data source regions/LDN 
DEBUG: 2014-10-29 12:17:09 +0000: Cannot find datafile /etc/customer/hieradata/regions/LDN.yaml, skipping 
DEBUG: 2014-10-29 12:17:09 +0000: Looking for data source environments/PROD 
DEBUG: 2014-10-29 12:17:09 +0000: Looking for data source common 
DEBUG: 2014-10-29 12:17:09 +0000: Found puppet_deploy_base in common 

************************************************************************************************************************************************** 
* Recording output in: deploy.20141029-121709+0000.log * 
************************************************************************************************************************************************** 

    * 2014-10-29 12:17:09 executing `deploy' 
    * 2014-10-29 12:17:09 executing `deploy:update' 
** transaction: start 

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

ответ

1

мне удалось разобраться в этом, установив конфигурационный хэш в вызове hiera в deploy.rb:

def hiera_lookup(key,default=nil,order_override=nil,resolution_type=:priority) 
    hiera_yaml = File.realpath('./puppet/hiera.yaml') 
    config = YAML.load_file(hiera_yaml) 
    config[:logger] = 'noop' 

    scope = YAML.load_file("/etc/hiera/hiera.conf") 
    hiera = Hiera.new(:config => config) 

    hiera.lookup("#{key}", default, scope, order_override, resolution_type) 
end 

Установка config[:logger] ключа «Нооп» подавил выход из hiera полностью.

+0

Я посмотрел на это недавно, если вы измените: logger в hiera.yaml на noop, это будет делать то же самое, без необходимости менять источник. – lsd

+0

Да, действительно, для моего варианта использования мне необходимо сохранить существующий: регистратор, как есть, и изменить выход во время выполнения (это используется в Capistrano). Приведенный пример кода не является источником, это вспомогательный метод в моем deploy.rb – Andrew

+0

А, вот что я искал. Хорошо знать. – lsd