Witam,
Jest jakiś sposób na przechwytywanie wszystkich zapytań jakie lecą do bazy podczas jednego requesta? Wiem, że railsy wypluwają je na konsole ale mi chodzi o przechwyceniu ich w aplikacji.
Pozdrawiam
Witam,
Jest jakiś sposób na przechwytywanie wszystkich zapytań jakie lecą do bazy podczas jednego requesta? Wiem, że railsy wypluwają je na konsole ale mi chodzi o przechwyceniu ich w aplikacji.
Pozdrawiam
Cześć,
pewnie da się to zrobić nadpisując coś związanego z logowaniem w ActiveRecord, ale co konkretnie, to nie wiem.
Tu jest przykład czegoś podobnego w railsach 2.3 http://stackoverflow.com/questions/1090801/how-do-i-get-the-last-sql-query-performed-by-activerecord-in-ruby-on-rails
Konkretnie, musisz się wpiąć w odpowiednie powiadomienia. Rails > 3 używa Notification API (http://railscasts.com/episodes/249-notifications-in-rails-3 które jest przesłodkie. Musisz się dowiedzieć w jakie notyfikacje chcesz się wpiąć. Przykładowo, sam logger doładnie to w sposób: https://github.com/rails/rails/blob/master/activesupport/lib/active_support/log_subscriber.rb
Ok, dzięki za nakierowanie. Jak będę miał jeszcze jakieś problemy to się odezwę