There are no reviews yet. Be the first to send feedback to the community and the maintainers!
= QueryTrace plugin for Rails It's nice that ActiveRecord logs the queries that are performed when your actions are executed, since it makes it easy to see when you have serious inefficiencies in your application. The next question, though, is always, "OK, so where are those being run from?" Before QueryTrace, that question could be a real pain to answer, since you'd have to go trawling through your code looking for the culprit. Once you have QueryTrace installed, though, your logs won't just tell you that you have a problem, they will pinpoint the location of that problem for you. == Usage All you have to do is have the plugin installed - QueryTrace takes care of the rest, including: * Only displaying when at the DEBUG log level * Honoring your log colorization settings == Example Before: Schedule Load (0.023687) SELECT * FROM schedules WHERE (schedules.id = 3) LIMIT 1 Resource Load (0.001076) SELECT * FROM resources WHERE (resources.id = 328) LIMIT 1 Schedule Load (0.011488) SELECT * FROM schedules WHERE (schedules.id = 3) LIMIT 1 Resource Load (0.022471) SELECT * FROM resources WHERE (resources.id = 328) LIMIT 1 After: Schedule Load (0.023687) SELECT * FROM schedules WHERE (schedules.id = 3) LIMIT 1 app/models/available_work.rb:50:in `study_method' app/helpers/plan_helper.rb:4:in `work_description' app/views/plan/_resource_schedule.rhtml:27:in `_run_rhtml_plan__resource_schedule' app/views/plan/_resource_schedule.rhtml:24:in `_run_rhtml_plan__resource_schedule' app/views/plan/_schedule_listing.rhtml:5:in `_run_rhtml_plan__schedule_listing' app/views/plan/_schedule_listing.rhtml:3:in `_run_rhtml_plan__schedule_listing' app/views/plan/_schedule_listing.rhtml:1:in `_run_rhtml_plan__schedule_listing' app/views/plan/index.rhtml:6:in `_run_rhtml_plan_index' vendor/plugins/textmate_footnotes/lib/textmate_footnotes.rb:60:in `render' Resource Load (0.001076) SELECT * FROM resources WHERE (resources.id = 328) LIMIT 1 app/models/available_work.rb:54:in `div_type' app/helpers/plan_helper.rb:6:in `work_description' app/views/plan/_resource_schedule.rhtml:27:in `_run_rhtml_plan__resource_schedule' app/views/plan/_resource_schedule.rhtml:24:in `_run_rhtml_plan__resource_schedule' app/views/plan/_schedule_listing.rhtml:5:in `_run_rhtml_plan__schedule_listing' app/views/plan/_schedule_listing.rhtml:3:in `_run_rhtml_plan__schedule_listing' app/views/plan/_schedule_listing.rhtml:1:in `_run_rhtml_plan__schedule_listing' app/views/plan/index.rhtml:6:in `_run_rhtml_plan_index' vendor/plugins/textmate_footnotes/lib/textmate_footnotes.rb:60:in `render' Schedule Load (0.011488) SELECT * FROM schedules WHERE (schedules.id = 3) LIMIT 1 app/models/available_work.rb:50:in `study_method' app/helpers/plan_helper.rb:4:in `work_description' app/views/plan/_resource_schedule.rhtml:27:in `_run_rhtml_plan__resource_schedule' app/views/plan/_resource_schedule.rhtml:24:in `_run_rhtml_plan__resource_schedule' app/views/plan/_schedule_listing.rhtml:5:in `_run_rhtml_plan__schedule_listing' app/views/plan/_schedule_listing.rhtml:3:in `_run_rhtml_plan__schedule_listing' app/views/plan/_schedule_listing.rhtml:1:in `_run_rhtml_plan__schedule_listing' app/views/plan/index.rhtml:6:in `_run_rhtml_plan_index' vendor/plugins/textmate_footnotes/lib/textmate_footnotes.rb:60:in `render' Resource Load (0.022471) SELECT * FROM resources WHERE (resources.id = 328) LIMIT 1 app/models/available_work.rb:54:in `div_type' app/helpers/plan_helper.rb:6:in `work_description' app/views/plan/_resource_schedule.rhtml:27:in `_run_rhtml_plan__resource_schedule' app/views/plan/_resource_schedule.rhtml:24:in `_run_rhtml_plan__resource_schedule' app/views/plan/_schedule_listing.rhtml:5:in `_run_rhtml_plan__schedule_listing' app/views/plan/_schedule_listing.rhtml:3:in `_run_rhtml_plan__schedule_listing' app/views/plan/_schedule_listing.rhtml:1:in `_run_rhtml_plan__schedule_listing' app/views/plan/index.rhtml:6:in `_run_rhtml_plan_index' vendor/plugins/textmate_footnotes/lib/textmate_footnotes.rb:60:in `render' == Additional Info Author: Nathaniel Talbott (for Terralien) Contact: [email protected] License: MIT Home: http://github.com/ntalbott/query_trace/ Subversion mirror: https://terralien.devguard.com/svn/projects/plugins/query_trace Copyright (c) 2006 Nathaniel Talbott. All Rights Reserved.
relix
A Redis-backed indexing layer that can be used with any (or no) backend data storage.drbfire
DRbFire provides a protocol for DRb that enables bi-directional communication (such as server-side callbacks) through firewalls without requiring any ports to be opened.23hacks
Source of Nathaniel Talbott's RailsConf 2008 talkactive_model
Provides Rails model services (such as validations) to non-ActiveRecord descendants.radiant-reorder-extension
Radiant Reorder Extensionradiant-quiz-extension
Radiant Quiz Extensioncooloptions
CoolOptions is a simple wrapper around optparse that provides less options and more convenience.radiant-file-system-resources-extension
Allows storing Radiant layouts and snippets on the file systemmupnp
Modernization fork of http://rubyforge.org/projects/mupnpcheck
An ridiculously minimalistic testing framework.twitroster
Twit Rosterriak_test_server
Drop-in Riak test server featuring memory backend with fast resets.Love Open Source and this site? Check out how you can help us