Charcoal-SE / metasmoke

Web dashboard for SmokeDetector.
https://metasmoke.erwaysoftware.com
Creative Commons Zero v1.0 Universal
43 stars 34 forks source link

Time to deletion chart seems broken #934

Open tripleee opened 2 years ago

tripleee commented 2 years ago

Is it just me? https://metasmoke.erwaysoftware.com/sites/dash?utf8=%E2%9C%93&site_id=21&months=3&tab=all displays "Error Loading Chart: Internal Server Error" for the TTD chart.

Screenshot 2022-08-16 at 13 03 54
makyen commented 2 years ago

For reference, the error text returned from the GET to https://metasmoke.erwaysoftware.com/graphs/monthly_ttd?months=3&round=0&site_id=21 is

NoMethodError in GraphsController#monthly_ttd

undefined method `round' for nil:NilClass
Extracted source (around line #161):

#159              end
#160            end
*161     data = data.map { |k, v| [k, v.round(params[:round].to_i)] } if params[:round]
#162     render json: data
#163   end
#164 

Extracted source (around line #161):

#159              end
#160            end
*161     data = data.map { |k, v| [k, v.round(params[:round].to_i)] } if params[:round]
#162     render json: data
#163   end
#164 

Extracted source (around line #161):

#159              end
#160            end
*161     data = data.map { |k, v| [k, v.round(params[:round].to_i)] } if params[:round]
#162     render json: data
#163   end
#164 

Rails.root: /var/railsapps/metasmoke/releases/20220814172854

Application Trace
app/controllers/graphs_controller.rb:161:in `block in monthly_ttd'
app/controllers/graphs_controller.rb:161:in `each'
app/controllers/graphs_controller.rb:161:in `map'
app/controllers/graphs_controller.rb:161:in `monthly_ttd'

Framework Trace
actionpack (5.2.6.2) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
actionpack (5.2.6.2) lib/abstract_controller/base.rb:194:in `process_action'
actionpack (5.2.6.2) lib/action_controller/metal/rendering.rb:30:in `process_action'
actionpack (5.2.6.2) lib/abstract_controller/callbacks.rb:42:in `block in process_action'
activesupport (5.2.6.2) lib/active_support/callbacks.rb:109:in `block in run_callbacks'
audited (4.10.0) lib/audited/sweeper.rb:14:in `around'
activesupport (5.2.6.2) lib/active_support/callbacks.rb:118:in `block in run_callbacks'
audited (4.10.0) lib/audited/sweeper.rb:14:in `around'
activesupport (5.2.6.2) lib/active_support/callbacks.rb:118:in `block in run_callbacks'
activesupport (5.2.6.2) lib/active_support/callbacks.rb:136:in `run_callbacks'
actionpack (5.2.6.2) lib/abstract_controller/callbacks.rb:41:in `process_action'
actionpack (5.2.6.2) lib/action_controller/metal/rescue.rb:22:in `process_action'
actionpack (5.2.6.2) lib/action_controller/metal/instrumentation.rb:34:in `block in process_action'
activesupport (5.2.6.2) lib/active_support/notifications.rb:168:in `block in instrument'
activesupport (5.2.6.2) lib/active_support/notifications/instrumenter.rb:23:in `instrument'
activesupport (5.2.6.2) lib/active_support/notifications.rb:168:in `instrument'
actionpack (5.2.6.2) lib/action_controller/metal/instrumentation.rb:32:in `process_action'
actionpack (5.2.6.2) lib/action_controller/metal/params_wrapper.rb:256:in `process_action'
activerecord (5.2.6.2) lib/active_record/railties/controller_runtime.rb:24:in `process_action'
actionpack (5.2.6.2) lib/abstract_controller/base.rb:134:in `process'
actionview (5.2.6.2) lib/action_view/rendering.rb:32:in `process'
rack-mini-profiler (1.1.6) lib/mini_profiler/profiling_methods.rb:104:in `block in profile_method'
actionpack (5.2.6.2) lib/action_controller/metal.rb:191:in `dispatch'
actionpack (5.2.6.2) lib/action_controller/metal.rb:252:in `dispatch'
actionpack (5.2.6.2) lib/action_dispatch/routing/route_set.rb:52:in `dispatch'
actionpack (5.2.6.2) lib/action_dispatch/routing/route_set.rb:34:in `serve'
actionpack (5.2.6.2) lib/action_dispatch/journey/router.rb:52:in `block in serve'
actionpack (5.2.6.2) lib/action_dispatch/journey/router.rb:35:in `each'
actionpack (5.2.6.2) lib/action_dispatch/journey/router.rb:35:in `serve'
actionpack (5.2.6.2) lib/action_dispatch/routing/route_set.rb:840:in `call'
warden (1.2.9) lib/warden/manager.rb:36:in `block in call'
warden (1.2.9) lib/warden/manager.rb:34:in `catch'
warden (1.2.9) lib/warden/manager.rb:34:in `call'
rack (2.2.3.1) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.3.1) lib/rack/etag.rb:27:in `call'
rack (2.2.3.1) lib/rack/conditional_get.rb:27:in `call'
rack (2.2.3.1) lib/rack/head.rb:12:in `call'
actionpack (5.2.6.2) lib/action_dispatch/http/content_security_policy.rb:18:in `call'
rack (2.2.3.1) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.3.1) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/cookies.rb:670:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/callbacks.rb:28:in `block in call'
activesupport (5.2.6.2) lib/active_support/callbacks.rb:98:in `run_callbacks'
actionpack (5.2.6.2) lib/action_dispatch/middleware/callbacks.rb:26:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/debug_exceptions.rb:61:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/show_exceptions.rb:33:in `call'
railties (5.2.6.2) lib/rails/rack/logger.rb:38:in `call_app'
railties (5.2.6.2) lib/rails/rack/logger.rb:26:in `block in call'
activesupport (5.2.6.2) lib/active_support/tagged_logging.rb:71:in `block in tagged'
activesupport (5.2.6.2) lib/active_support/tagged_logging.rb:28:in `tagged'
activesupport (5.2.6.2) lib/active_support/tagged_logging.rb:71:in `tagged'
railties (5.2.6.2) lib/rails/rack/logger.rb:26:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/remote_ip.rb:81:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/request_id.rb:27:in `call'
rack (2.2.3.1) lib/rack/method_override.rb:24:in `call'
rack (2.2.3.1) lib/rack/runtime.rb:22:in `call'
activesupport (5.2.6.2) lib/active_support/cache/strategy/local_cache_middleware.rb:29:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/executor.rb:14:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/static.rb:127:in `call'
rack (2.2.3.1) lib/rack/sendfile.rb:110:in `call'
rack-cors (0.4.1) lib/rack/cors.rb:81:in `call'
rack-mini-profiler (1.1.6) lib/mini_profiler/profiler.rb:296:in `call'
railties (5.2.6.2) lib/rails/engine.rb:524:in `call'
/usr/lib/ruby/vendor_ruby/phusion_passenger/rack/thread_handler_extension.rb:107:in `process_request'
/usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler/thread_handler.rb:149:in `accept_and_process_next_request'
/usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler/thread_handler.rb:110:in `main_loop'
/usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler.rb:416:in `block (3 levels) in start_threads'
/usr/lib/ruby/vendor_ruby/phusion_passenger/utils.rb:113:in `block in create_thread_and_abort_on_exception'

Full Trace
app/controllers/graphs_controller.rb:161:in `block in monthly_ttd'
app/controllers/graphs_controller.rb:161:in `each'
app/controllers/graphs_controller.rb:161:in `map'
app/controllers/graphs_controller.rb:161:in `monthly_ttd'
actionpack (5.2.6.2) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
actionpack (5.2.6.2) lib/abstract_controller/base.rb:194:in `process_action'
actionpack (5.2.6.2) lib/action_controller/metal/rendering.rb:30:in `process_action'
actionpack (5.2.6.2) lib/abstract_controller/callbacks.rb:42:in `block in process_action'
activesupport (5.2.6.2) lib/active_support/callbacks.rb:109:in `block in run_callbacks'
audited (4.10.0) lib/audited/sweeper.rb:14:in `around'
activesupport (5.2.6.2) lib/active_support/callbacks.rb:118:in `block in run_callbacks'
audited (4.10.0) lib/audited/sweeper.rb:14:in `around'
activesupport (5.2.6.2) lib/active_support/callbacks.rb:118:in `block in run_callbacks'
activesupport (5.2.6.2) lib/active_support/callbacks.rb:136:in `run_callbacks'
actionpack (5.2.6.2) lib/abstract_controller/callbacks.rb:41:in `process_action'
actionpack (5.2.6.2) lib/action_controller/metal/rescue.rb:22:in `process_action'
actionpack (5.2.6.2) lib/action_controller/metal/instrumentation.rb:34:in `block in process_action'
activesupport (5.2.6.2) lib/active_support/notifications.rb:168:in `block in instrument'
activesupport (5.2.6.2) lib/active_support/notifications/instrumenter.rb:23:in `instrument'
activesupport (5.2.6.2) lib/active_support/notifications.rb:168:in `instrument'
actionpack (5.2.6.2) lib/action_controller/metal/instrumentation.rb:32:in `process_action'
actionpack (5.2.6.2) lib/action_controller/metal/params_wrapper.rb:256:in `process_action'
activerecord (5.2.6.2) lib/active_record/railties/controller_runtime.rb:24:in `process_action'
actionpack (5.2.6.2) lib/abstract_controller/base.rb:134:in `process'
actionview (5.2.6.2) lib/action_view/rendering.rb:32:in `process'
rack-mini-profiler (1.1.6) lib/mini_profiler/profiling_methods.rb:104:in `block in profile_method'
actionpack (5.2.6.2) lib/action_controller/metal.rb:191:in `dispatch'
actionpack (5.2.6.2) lib/action_controller/metal.rb:252:in `dispatch'
actionpack (5.2.6.2) lib/action_dispatch/routing/route_set.rb:52:in `dispatch'
actionpack (5.2.6.2) lib/action_dispatch/routing/route_set.rb:34:in `serve'
actionpack (5.2.6.2) lib/action_dispatch/journey/router.rb:52:in `block in serve'
actionpack (5.2.6.2) lib/action_dispatch/journey/router.rb:35:in `each'
actionpack (5.2.6.2) lib/action_dispatch/journey/router.rb:35:in `serve'
actionpack (5.2.6.2) lib/action_dispatch/routing/route_set.rb:840:in `call'
warden (1.2.9) lib/warden/manager.rb:36:in `block in call'
warden (1.2.9) lib/warden/manager.rb:34:in `catch'
warden (1.2.9) lib/warden/manager.rb:34:in `call'
rack (2.2.3.1) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.3.1) lib/rack/etag.rb:27:in `call'
rack (2.2.3.1) lib/rack/conditional_get.rb:27:in `call'
rack (2.2.3.1) lib/rack/head.rb:12:in `call'
actionpack (5.2.6.2) lib/action_dispatch/http/content_security_policy.rb:18:in `call'
rack (2.2.3.1) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.3.1) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/cookies.rb:670:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/callbacks.rb:28:in `block in call'
activesupport (5.2.6.2) lib/active_support/callbacks.rb:98:in `run_callbacks'
actionpack (5.2.6.2) lib/action_dispatch/middleware/callbacks.rb:26:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/debug_exceptions.rb:61:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/show_exceptions.rb:33:in `call'
railties (5.2.6.2) lib/rails/rack/logger.rb:38:in `call_app'
railties (5.2.6.2) lib/rails/rack/logger.rb:26:in `block in call'
activesupport (5.2.6.2) lib/active_support/tagged_logging.rb:71:in `block in tagged'
activesupport (5.2.6.2) lib/active_support/tagged_logging.rb:28:in `tagged'
activesupport (5.2.6.2) lib/active_support/tagged_logging.rb:71:in `tagged'
railties (5.2.6.2) lib/rails/rack/logger.rb:26:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/remote_ip.rb:81:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/request_id.rb:27:in `call'
rack (2.2.3.1) lib/rack/method_override.rb:24:in `call'
rack (2.2.3.1) lib/rack/runtime.rb:22:in `call'
activesupport (5.2.6.2) lib/active_support/cache/strategy/local_cache_middleware.rb:29:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/executor.rb:14:in `call'
actionpack (5.2.6.2) lib/action_dispatch/middleware/static.rb:127:in `call'
rack (2.2.3.1) lib/rack/sendfile.rb:110:in `call'
rack-cors (0.4.1) lib/rack/cors.rb:81:in `call'
rack-mini-profiler (1.1.6) lib/mini_profiler/profiler.rb:296:in `call'
railties (5.2.6.2) lib/rails/engine.rb:524:in `call'
/usr/lib/ruby/vendor_ruby/phusion_passenger/rack/thread_handler_extension.rb:107:in `process_request'
/usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler/thread_handler.rb:149:in `accept_and_process_next_request'
/usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler/thread_handler.rb:110:in `main_loop'
/usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler.rb:416:in `block (3 levels) in start_threads'
/usr/lib/ruby/vendor_ruby/phusion_passenger/utils.rb:113:in `block in create_thread_and_abort_on_exception'

Request parameters
{"months"=>"3",
 "round"=>"0",
 "site_id"=>"21"}