FiveRuns Dash recipe for ActiveRecord
Provides a Ruby API to push metrics from applications using ActiveRecord to the FiveRuns Dash service, dash.fiveruns.com, currently in beta.
You'll need a Dash account before using this library.
This library is released as a gem from the official repository at github.com/fiveruns/dash-activerecord
sudo gem install fiveruns-dash-activerecord --source http://gems.github.com
Metrics in this recipe require a 'total_time' option be provided when the recipe is added; this option should indicate the metric to use when calculating % of utilization:
For web applications, this is probably the total time of a request (ie, request_time)
For daemons, this is likely a processing cycle (eg, proc_time)
Known issue: The metric name is not currently namespaced by recipe URL; although collision is unlikely, if your 'total_time' setting is for a metric that's present in more than one recipe, you may encounter problems.
Note: The metric selected must be `marked', ie:
recipe.time :response_time, :method => 'Request#dispatch_action', :mark => true
other_recipe.add_recipe :activerecord, :url => 'http://dash.fiveruns.com', :total_time => 'response_time'
See the Dash Ruby support pages support.fiveruns.com/faqs/dash/ruby for more information on how to use this library.
The FiveRuns Development Team & Dash community
The fiveruns-dash-ruby gem (see github.com/fiveruns/dash-ruby)
The json gem (as a dependency for fiveruns-dash-ruby)
This library has only been tested on OSX and Linux. See the notes for fiveruns-dash-ruby for more information: github.com/fiveruns/dash-ruby
As an open source project, we welcome community contributions!
The best way to contribute is by sending pull requests via GitHub. The official repository for this project is:
Please join the dash-users Google group, groups.google.com/group/dash-users
You can also contact us via Twitter, Campfire, or email; see the main help page, support.fiveruns.com, for details.
# (The FiveRuns License) # # Copyright (c) 2006-2008 FiveRuns Corporation # # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # 'Software'), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.