Skip to content

A Sinatra app to view/manage beanstalkd queues that can be embedded in a Rails app similar to what's available in Resque

License

Notifications You must be signed in to change notification settings

cgunther/beanstalkd_view

 
 

Repository files navigation

Build Status Code Climate

Beanstalkd View

A Sinatra app to view/manage beanstalkd queues that can be embedded in a Rails app similar to what's available in Resque.

Configuration

To use in a Rails app, include the gem in your Gemfile:

gem beanstalkd_view

Otherwise, gem install beanstalkd_view

Use the following environment variable to specify the location of the beanstalk server:

ENV['BEANSTALK_URL'] = 'beanstalk://localhost/'

This can be a comma separated list, e.g. 'beanstalk://localhost:11300,beanstalk://localhost:11400'

Embedding in a Rails app

Add the following to your routes.rb file:

mount BeanstalkdView::Server, :at => "/beanstalkd"

(NOTE: You may mount the server at any path, not just /beanstalkd)

You can then browse to your application path to view information about your beanstalkd tubes, i.e. http://127.0.0.1:3000/beanstalkd

If you wish to authenticate the mounted app with Devise, it would look something like:

devise_for :admin_users, ActiveAdmin::Devise.config

match('/beanstalkd/admin/login' => redirect('/admin/login'))
authenticate :admin_user do
  mount BeanstalkdView::Server, at: "/beanstalkd"
end

Running from the command line

Run the beanstalkd_view executable, e.g.

beanstalkd_view

or from a Rails app:

bundle exec beanstalkd_view

(This will use the vegas gem to launch the Sinatra app on an available port.)

Alternatively, a Rackup file is provided. To use: cd into the beanstalkd_view directory and execute:

rackup

Screenshot

Screenshot

Running the tests

There are 3 variants of RSpec tests.

  • Without beanstalkd running, just execute: rspec spec
  • Without 1 instance of beanstalkd running (default port), execute: rspec spec --tag requires_beanstalkd
  • Without 2 instances of beanstalkd running (ports 11300 and 11400), execute: rspec spec --tag requires_two_beanstalkd

License

beanstalkd_view is released under the MIT license:

It makes use of the following components also using the MIT license:

And under the Apache license:

About

A Sinatra app to view/manage beanstalkd queues that can be embedded in a Rails app similar to what's available in Resque

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 73.1%
  • JavaScript 26.9%