I happened find that in ~/.chef/knife.rb or /etc/chef/client.rb, any error will be ignored by knife or chef-client.
~/.chef/knife.rb
/etc/chef/client.rb
... a_non_exist_