A simple library for working with the Proby task monitoring application.
Proby can be installed using RubyGems
gem install proby
Inside your script, be sure to
require "rubygems" require "proby"
If you're using Bundler, add the following to your Gemfile
and then run
Before notifications can be sent, you must tell Proby your API key. This only needs to be done once, and should ideally be done inside your apps initialization code.
Proby.api_key = "b4fe1200c105012efde3482a1411a947"
In addition, you can optionally give Proby a logger to use.
Proby.logger = Rails.logger
To send a start notification
To send a finish notification
task_api_id when calling the notification methods is optional. If it is not provided,
Proby will use the value of the
PROBY_TASK_ID environment variable. If no task id is specified
in the method call, and no value is set in the
PROBY_TASK_ID environment variable, then no notification
will be sent.
The Resque Plugin
The Resque plugin will automatically send start and finish notifications to Proby when your job
starts and finishes. Simply
extend Proby::ResquePlugin in your Resque job. The task id
can either be pulled from the
PROBY_TASK_ID environment variable, or specified in the job itself
by setting the
@proby_id attribute to the task id.
class SomeJob extend Proby::ResquePlugin @proby_id = 'abc123' # Or simply let it use the value in the PROBY_TASK_ID environment variable self.perform do_stuff end end
The Proby::ProbyTask class can be used to create, read, update, delete, pause, and unpause your tasks on Proby.
my_tasks = Proby::ProbyTask.find(:all) a_specific_task = Proby::ProbyTask.find("the_proby_task_id") task = Proby::ProbyTask.create(:name => 'Task name', :crontab => '* * * * *') task.name = "New name" task.save task.pause task.unpause task.delete