2

我正在寻找使用knife ec2创建服务器时设置厨师客户端日志级别的正确方法。

我最初的想法是在我的 Knife.rb 文件中设置日志级别配置,如下所示:

log_level                :debug

这不会导致日志级别发生任何明显的变化。

我还尝试在刀 ec2 中打开 -VV 选项,但这只会导致刀 ec2 本身的详细输出。

当我登录到服务器后直接运行 chef-client 时,我可以使用以下命令毫无问题地获取调试信息:

sudo chef-client -l debug

这已经足够了,但我正在调查一个仅在初始服务器引导程序中出现的潜在问题。

4

2 回答 2

6

这是我发现的用于控制日志级别的简单黑客/解决方法。在knife.rb中,包括如下一行,例如:

chef_client_path 'chef-client -l debug'

您可以通过查看 这行 Chef 源代码来了解其工作原理。我确认这在 Chef 11.6 中有效。它可能适用于其他版本。

于 2013-09-24T06:21:54.290 回答
2

目前,默认引导模板始终将默认:auto日志级别设置为节点。至少有一张票似乎相关。

因此,您现在唯一的选择是创建自己的引导模板,并将其添加log_level :debug/etc/chef/client.rb中。您可以复制和修改例如默认的“ chef-full ”模板,然后将其作为参数传递给刀。

于 2013-07-05T03:44:11.963 回答