igorkasyanchuk/rails_performance

question: why append RailsPerformance::Extensions to LogSubscriber instead of integrating with Rails notifications directly

Aperta

#31 aperta il 3 mag 2021

 (1 commento) (3 reazioni) (0 assegnatari)Ruby (91 fork)github user discovery
help wanted

Metriche repository

Star
 (1237 stelle)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

I installed rails_performance on a rails 6.x application and ran a number of page requests. "Recent Requests" included everything as expected. However, the trace info for every request via TraceReport data section was blank.

My rails application uses rails_semantic_logger, which replaces the default ActionView::LogSubscriber and ActiveRecord::LogSubscriber. This prevented rails_performance from tracking the logsubscriber events.

I was able to resolve this by appending the RailsPerformance::Extensions::Db module to the appropriate RailsSemanticLogger LogSubscriber class.

Since ActiveSupport::LogSubscriber is just a logger specific ActiveSupport::Notifications subscriber, why doesn't RailsPerformance just bypass the LogSubscriber altogether and use ActiveSupport::Notifications directly?

If RailsPerformance can use the Notifications directly, would you be comfortable accepting an outside PR?

Guida contributor