chef / knife-tidy

Report on stale Chef Server nodes/cookbooks, clean those up and additionally clean data integrity issues from a knife-ec-backup object based backup!
Apache License 2.0
37 stars 21 forks source link

ERROR: SystemStackError: stack level too deep #56

Open lcc2207 opened 6 years ago

lcc2207 commented 6 years ago

Getting the following error running knife tidy server report --node-threshold 60 after a knife tidy clean has been run.
Currently the xxxorg has 0 nodes in it.

Organization: xxxorg ERROR: SystemStackError: stack level too deep

jeremymv2 commented 6 years ago

@lcc2207 sorry that you're not able to run the report.

To help me understand what's happening please share the stacktrace. You may need to add -VV flags onto the knife command.

lcc2207 commented 6 years ago

the out put is extremely large is there something in the output I can possibly parse out?

jeremymv2 commented 6 years ago

@lcc2207 run the knife command with -VV (extra verbosity) then send the part that is the stack strace. It would look something like:


/opt/chef/embedded/lib/ruby/2.1.0/net/http/response.rb:119:in `error!'
  /opt/chef/embedded/apps/chef/lib/chef/http.rb:145:in `request'
  /opt/chef/embedded/apps/chef/lib/chef/http.rb:118:in `put'
  /opt/chef/embedded/apps/chef/lib/chef/node.rb:512:in `save'
  /opt/chef/embedded/apps/chef/lib/chef/client.rb:257:in `save_updated_node'
  /opt/chef/embedded/apps/chef/lib/chef/client.rb:403:in `run'
  /opt/chef/embedded/apps/chef/lib/chef/application.rb:261:in `block in fork_chef_client'
  /opt/chef/embedded/apps/chef/lib/chef/application.rb:249:in `fork'
  /opt/chef/embedded/apps/chef/lib/chef/application.rb:249:in `fork_chef_client'
  /opt/chef/embedded/apps/chef/lib/chef/application.rb:215:in `block in run_chef_client'
  /opt/chef/embedded/apps/chef/lib/chef/local_mode.rb:38:in `with_server_connectivity'
  /opt/chef/embedded/apps/chef/lib/chef/application.rb:201:in `run_chef_client'
  /opt/chef/embedded/apps/chef/lib/chef/application/client.rb:355:in `block in interval_run_chef_client'
  /opt/chef/embedded/apps/chef/lib/chef/application/client.rb:345:in `loop'
  /opt/chef/embedded/apps/chef/lib/chef/application/client.rb:345:in `interval_run_chef_client'
  /opt/chef/embedded/apps/chef/lib/chef/application/client.rb:335:in `run_application'
  /opt/chef/embedded/apps/chef/lib/chef/application.rb:58:in `run'
  /opt/chef/embedded/apps/chef/bin/chef-client:26:in `<top (required)>'
  /usr/bin/chef-client:40:in `load'
  /usr/bin/chef-client:40:in `<main>'```

That tells me what library, method and even which line number was executing when the error was generated. 
lcc2207 commented 6 years ago

/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/mixlib-log-1.7.1/lib/mixlib/log/formatter.rb:45:in msg2str': stack level too deep (SystemStackError) from /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/mixlib-log-1.7.1/lib/mixlib/log/formatter.rb:36:incall' from /opt/chef/embedded/lib/ruby/2.3.0/logger.rb:546:in format_message' from /opt/chef/embedded/lib/ruby/2.3.0/logger.rb:434:inadd' from /opt/chef/embedded/lib/ruby/2.3.0/logger.rb:455:in debug' from /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/mixlib-log-1.7.1/lib/mixlib/log.rb:120:inblock in debug' from /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/mixlib-log-1.7.1/lib/mixlib/log.rb:120:in each' from /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/mixlib-log-1.7.1/lib/mixlib/log.rb:120:indebug' from /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.20/lib/chef/http/basic_client.rb:75:in block (2 levels) in request' ... 7278 levels... from /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.20/lib/chef/application/knife.rb:156:inrun' from /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.20/bin/knife:25:in <top (required)>' from /opt/chef/embedded/bin/knife:23:inload' from /opt/chef/embedded/bin/knife:23:in `

'