Foreman Proxy Monitoring down upgrading Foreman from 3.10 to 3.11

Upgrading Foreman to 3.11 and monitoring proxy plugin to 0.3.0, the foreman-proxy service does not start anymore on my monitoring proxy with following errors :

Jul 4 17:37:52 drstdimbrllz23v foreman-proxy[1524500]: Error during startup, terminating
Jul 4 17:37:52 drstdimbrllz23v foreman-proxy[1524500]: Error details for Error during startup, terminating: <RuntimeError>: can't add a new key into hash during iteration#012/usr/share/gems/gems/smart_proxy_monitoring-0.3.0/lib/smart_proxy_monitoring_icinga2/icinga2_result_uploader.rb:85:in `block in symbolize_keys_deep!'#012/usr/share/gems/gems/smart_proxy_monitoring-0.3.0/lib/smart_proxy_monitoring_icinga2/icinga2_result_uploader.rb:83:in `each_key'#012/usr/share/gems/gems/smart_proxy_monitoring-0.3.0/lib/smart_proxy_monitoring_icinga2/icinga2_result_uploader.rb:83:in `symbolize_keys_deep!'#012/usr/share/gems/gems/smart_proxy_monitoring-0.3.0/lib/smart_proxy_monitoring_icinga2/icinga2_result_uploader.rb:23:in `block in upload'#012/usr/share/gems/gems/smart_proxy_monitoring-0.3.0/lib/smart_proxy_monitoring_icinga2/monitoring_icinga2_common.rb:18:in `with_event_counter'#012/usr/share/gems/gems/smart_proxy_monitoring-0.3.0/lib/smart_proxy_monitoring_icinga2/icinga2_result_uploader.rb:22:in `upload'#012/usr/share/gems/gems/smart_proxy_monitoring-0.3.0/lib/smart_proxy_monitoring_icinga2/icinga2_result_uploader.rb:71:in `block in do_start'#012/usr/share/gems/gems/logging-2.3.1/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context'
Jul 4 17:37:52 drstdimbrllz23v foreman-proxy[1524500]: going to shutdown ...
Jul 4 17:37:52 drstdimbrllz23v foreman-proxy[1524500]: WEBrick::HTTPServer#start done.
Jul 4 17:37:52 drstdimbrllz23v systemd[1]: foreman-proxy.service: Main process exited, code=exited, status=1/FAILURE
Jul 4 17:37:52 drstdimbrllz23v systemd[1]: foreman-proxy.service: Failed with result 'exit-code'.

So that happens here:

As the error says:

can’t add a new key into hash during iteration

This needs to be rewritten: Avoid changing hash during iteration by ekohl · Pull Request #34 · theforeman/smart_proxy_monitoring · GitHub

Thank you ekohl :slight_smile:

I’ve tried your commit locally on my proxy and i can confirm that it is now working as expected.