2013-07-01 244 views
2

我在尋找使用刀EC2創建一個服務器時設置廚師客戶端的日誌級別的正確方式,當設定廚師日誌級別中刀EC2。創建服務器

我最初的想法是設置日誌級別的配置在我knife.rb文件是這樣的:

log_level    :debug 

這並不會導致日誌級別的任何明顯的變化。

我還試圖打開在刀EC2的-VV選項,但只是導致從刀EC2本身的詳細輸出。

當我直接登錄到服務器後運行廚師客戶端,我可以用得到,沒有任何問題的調試信息:

sudo chef-client -l debug 

這將是足夠的,但我調查,只有發生了根本的問題在最初的服務器引導程序上。

回答

2

目前標準的引導模板總是設置默認:auto日誌級別的節點。至少有one ticket似乎是相關的。

因此,您現在唯一的選擇是創建您自己的引導程序模板,該模板將log_level :debug添加到/etc/chef/client.rb。您可以複製和修改默認的「chef-full」模板,然後將它作爲參數傳遞給刀。

+0

我最終以非常類似於您所描述的方式解決了該問題,但使用了bash腳本而不是ruby。我在沒有分配run_lists的情況下引導節點,將run_lists分配給節點,然後ssh進入節點以使用我自己的調試級別執行chef_client。 – Eric

6

下面是一個簡單的黑客/變通,我發現來控制日誌級別。在knife.rb,包括 類似以下行,例如:

chef_client_path 'chef-client -l debug' 

你可以看到爲什麼這個工程通過查看廚師源代碼 this line 。我確認這在廚師11.6中有效。 它可以在其他版本。

+0

這仍然是從12.4開始工作的。另外,謝謝! –

+0

這對我今天很有用!救命恩人 - 謝謝! –