有此問題的兩個部分:
首先,通過日誌級別帶有「-l調試」的廚房是用於廚房可執行文件而不是用於提供器,在這種情況下是「廚師獨奏「。因此,如果您運行調試選項的廚房,你會看到,供應方與LOG_LEVEL運行爲「汽車」,如下圖,甚至當廚房在調試模式:
[SSH] [email protected]<{:user_known_hosts_file=>"/dev/null",
:paranoid=>false, :port=>"2222", :compression=>false, :compression_level=>0,
:keepalive=>true, :keepalive_interval=>60, :timeout=>15, :keys_only=>true,
:keys=>["/Users/mpriyada/myWorks/.kitchen/kitchen-vagrant/kitchen-default-centos/.vagrant/machines/default/virtualbox/private_key"],
:auth_methods=>["publickey"], :user=>"vagrant"}> (sh -c 'sudo -E /opt/chef/bin/chef-solo
--config /tmp/kitchen/solo.rb --log_level auto --force-formatter --no-color
--json-attributes /tmp/kitchen/dna.json')
這意味着,在廚師獨奏日誌優先級,「汽車」與「警告」級別相同「級別。 因此,如果日誌級別設置爲「日誌」資源中的信息,則不會記錄輸出。嘗試下面的代碼,你看到的區別:
log "mylog1" do
level :warn
message 'WHY I NO SEE THIS?'
end
log "mylog2" do
level :info
message 'WHY I NO SEE THIS?'
end
輸出:
Recipe: test3::default
* log[mylog1] action write[2016-08-17T03:55:16+00:00] WARN: WHY I NO SEE THIS?
* log[mylog2] action write
Running handlers:
Running handlers complete
現在,第二部分,如果你不想在運行你的廚房 「汽車」 log_level,你可以去「/opt/chefdk/embedded/lib/ruby/gems/2.1.0/gems/test-kitchen-1.10.0/lib/kitchen/provisioner/chef_base.rb「,改變從汽車到任何廚師獨奏採伐許可證https://docs.chef.io/config_rb_solo.html的硬編碼日誌級別。
我可以設置這個英寸kitchen.yml或配置文件在我的食譜或食譜中的某處,而不是修改實際的廚房代碼? – red888
由於它的硬編碼。恐怕沒有太多可以做的事情。 –
廚房日誌級別可以通過環境變量進行更改:'KITCHEN_LOG ='DEBUG'廚房收斂' – Duke