railsmachine / nagiosharder

Ruby API for scraping Nagios
MIT License
115 stars 42 forks source link

Undefined method `gsub' for nil:NilClass #40

Open ghost opened 6 years ago

ghost commented 6 years ago

The plugin works fine until I restart the nagios service. An entry like "Nagios 4.X.X starting..." will be logged in nagios.log. Afterwards

scheduler caught exception: undefined method gsub' for nil:NilClass /mnt/c/Users/sj/Documents/Git/iti-dashboard/vendor/bundle/ruby/2.3.0/bundler/gems/nagiosharder-c850f759f457/lib/nagiosharder.rb:671:in block in parse_history_html' /mnt/c/Users/sj/Documents/Git/iti-dashboard/vendor/bundle/ruby/2.3.0/gems/nokogiri-1.8.4/lib/nokogiri/xml/node_set.rb:204:in block in each' /mnt/c/Users/sj/Documents/Git/iti-dashboard/vendor/bundle/ruby/2.3.0/gems/nokogiri-1.8.4/lib/nokogiri/xml/node_set.rb:203:in upto' /mnt/c/Users/sj/Documents/Git/iti-dashboard/vendor/bundle/ruby/2.3.0/gems/nokogiri-1.8.4/lib/nokogiri/xml/node_set.rb:203:in each' /mnt/c/Users/sj/Documents/Git/iti-dashboard/vendor/bundle/ruby/2.3.0/bundler/gems/nagiosharder-c850f759f457/lib/nagiosharder.rb:654:in parse_history_html' /mnt/c/Users/sj/Documents/Git/iti-dashboard/vendor/bundle/ruby/2.3.0/bundler/gems/nagiosharder-c850f759f457/lib/nagiosharder.rb:388:in alert_history' /mnt/c/Users/sj/Documents/Git/iti-dashboard/jobs/nagios_history.rb:24:in block in get_alerts' /mnt/c/Users/sj/Documents/Git/iti-dashboard/jobs/nagios_history.rb:22:in each' /mnt/c/Users/sj/Documents/Git/iti-dashboard/jobs/nagios_history.rb:22:in get_alerts' /mnt/c/Users/sj/Documents/Git/iti-dashboard/jobs/nagios_history.rb:53:in block in <top (required)>' /mnt/c/Users/sj/Documents/Git/iti-dashboard/vendor/bundle/ruby/2.3.0/gems/rufus-scheduler-2.0.24/lib/rufus/sc/jobs.rb:230:in trigger_block' /mnt/c/Users/sj/Documents/Git/iti-dashboard/vendor/bundle/ruby/2.3.0/gems/rufus-scheduler-2.0.24/lib/rufus/sc/jobs.rb:204:in block in trigger' /mnt/c/Users/sj/Documents/Git/iti-dashboard/vendor/bundle/ruby/2.3.0/gems/rufus-scheduler-2.0.24/lib/rufus/sc/scheduler.rb:430:in block in trigger_job'

After removing the entry via sed -i '/Nagios \ 4/d' /usr/local/nagios/var/nagios.log; all things are fine again.

ghost commented 6 years ago

The same for the nagios.log entry: "Caught SIGTERM, shutting down..."