Sha256: 8dbd0112fd9157c2d5a7406b2dbb6e9dddec2af0fcc896aa73a13c3a1e842230
Contents?: true
Size: 1.38 KB
Versions: 1
Compression:
Stored size: 1.38 KB
Contents
# Ruby Worker The Ruby Worker sends JSON wrapped data via UDP packets to a given server at a defined interval. ## Installation ``` $ gem install healthety ``` ## Usage ``` ruby require "healthety" Healthety.workers do server "127.0.0.1" port 41234 worker :load_average do interval 0.5 # Gets load average with a system call (Mac OS X) value `w | head -n1 | cut -f4 -d":" | cut -f2 -d" "`.to_f end worker :random do interval 2 value rand(10) end end ``` ### Defining helpers If you want to define some helper methods create a new module first. Note the `helpers` method at the end to include your module into the workers. In this case a new file called `connection_helper.rb` contains the MySQL connection handling. ``` ruby require "mysql2" module Healthety module ConnectionHelper def mysql @client ||= Mysql2::Client.new(:host => "localhost", :username => "root") end end helpers ConnectionHelper end ``` In your workers you can now use the helper method. Since the MySQL connection gets saved into a class instance variable the connection gets established only once. ``` ruby $:.unshift File.dirname(__FILE__) require "healthety" require "connection_helper" Healthety.workers do server "127.0.0.1" port 41234 worker :user_count do interval 5 value mysql.query("SELECT COUNT(*) AS count FROM users").first["count"] end end ```
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
healthety-0.0.5 | README.md |