frenzy_bunnies 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -79,7 +79,13 @@ In the listing above, `f.run` accepts your worker _classes_, and will run your w
79
79
 
80
80
  When FrenzyBunnies run, it will automatically create a web dashboard for you, on `localhost:11333` by default.
81
81
 
82
- `image`
82
+
83
+ Currently, the dashboard displays your job statistics (passed vs. failed), JVM
84
+ health (heap usage) and threads overview.
85
+
86
+
87
+ <img src="https://raw.github.com/jondot/frenzy_bunnies/master/fb-cap.png"/><br/>
88
+
83
89
 
84
90
  Changing the bound address is easy to do through the many options you can pass to the running `Context`:
85
91
 
Binary file
@@ -19,6 +19,7 @@ Gem::Specification.new do |gem|
19
19
  gem.add_runtime_dependency 'thor'
20
20
  gem.add_runtime_dependency 'sinatra'
21
21
  gem.add_runtime_dependency 'atomic'
22
+ gem.add_runtime_dependency 'json'
22
23
 
23
24
  gem.add_development_dependency 'guard-coffeescript'
24
25
  end
@@ -12,7 +12,7 @@ class FrenzyBunnies::Context
12
12
  @opts[:web_host] ||= 'localhost'
13
13
  @opts[:web_port] ||= 11333
14
14
  @opts[:web_threadfilter] ||= /^pool-.*/
15
- @opts[:env] ||= ''
15
+ @opts[:env] ||= 'development'
16
16
 
17
17
  @env = @opts[:env]
18
18
  @logger = @opts[:logger] || Logger.new(STDOUT)
@@ -1,3 +1,3 @@
1
1
  module FrenzyBunnies
2
- VERSION = "0.0.6"
2
+ VERSION = "0.0.7"
3
3
  end
@@ -1,5 +1,5 @@
1
1
  require 'sinatra/base'
2
-
2
+ require 'json'
3
3
 
4
4
  class FrenzyBunnies::Web < Sinatra::Base
5
5
  configure do
@@ -39,7 +39,7 @@ class FrenzyBunnies::Web < Sinatra::Base
39
39
  end
40
40
 
41
41
  def self.run_with(jobs, opts={})
42
- set :jobs, jobs
42
+ set :jobs, (jobs || [])
43
43
  set :health_collector, FrenzyBunnies::Health::Collector.new({:jvm => {:threadfilter => opts[:threadfilter]}})
44
44
  @logger = opts[:logger]
45
45
  @logger.info "* running web dashboard bound to #{opts[:host]} on port #{opts[:port]}."
@@ -1,7 +1,7 @@
1
1
  <html>
2
2
  <head>
3
3
  <meta http-equiv="content-type" content="text/html; charset=utf-8" />
4
- <title>Frenzy Bunnies Web</title>
4
+ <title>Frenzy Bunnies Dashboard</title>
5
5
  <link href="/css/bootstrap.min.css" rel="stylesheet">
6
6
  <style type="text/css" media="all">
7
7
  body{
@@ -14,15 +14,18 @@
14
14
  .prop-label, .job-detail .prop-value{
15
15
  color: #a8a8a8;
16
16
  }
17
+ #job-list .job{
18
+ width: 45em;
19
+ clear:both;
20
+ }
17
21
  .job-detail{
18
22
  float: left;
19
- width: 20em;
20
23
  }
21
24
  .job-detail .name, .job-results .prop-value{
22
25
  font-size: 2em;
23
26
  }
24
27
  .job-results{
25
- float:left;
28
+ float:right;
26
29
  text-align: center;
27
30
  }
28
31
  .job-results > div {
@@ -178,7 +181,7 @@
178
181
  <div class="navbar navbar-fixed-top">
179
182
  <div class="navbar-inner">
180
183
  <div class="container">
181
- <a class="brand" href="#">FrenzyBunnies/<em>Web</em></a>
184
+ <a class="brand" href="#">Frenzy<img src="/img/bunny16.png" class="icon"/>Bunnies</a>
182
185
  <div class="nav-collapse collapse">
183
186
  <ul class="nav">
184
187
  <li><a href="#jobs-s">Jobs</a></li>
@@ -205,10 +208,6 @@
205
208
  </section>
206
209
 
207
210
 
208
- <footer>
209
- <p>&copy; Company 2012</p>
210
- </footer>
211
-
212
211
  </div> <!-- /container -->
213
212
 
214
213
 
metadata CHANGED
@@ -1,159 +1,154 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: frenzy_bunnies
3
- version: !ruby/object:Gem::Version
4
- version: 0.0.6
3
+ version: !ruby/object:Gem::Version
5
4
  prerelease:
5
+ version: 0.0.7
6
6
  platform: ruby
7
- authors:
8
- - Dotan Nahum
7
+ authors:
8
+ - Dotan Nahum
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-09-11 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
15
- name: hot_bunnies
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: 1.4.0.pre3
22
- type: :runtime
23
- prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ! '>='
28
- - !ruby/object:Gem::Version
29
- version: 1.4.0.pre3
30
- - !ruby/object:Gem::Dependency
31
- name: thor
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ! '>='
36
- - !ruby/object:Gem::Version
37
- version: '0'
38
- type: :runtime
39
- prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ! '>='
44
- - !ruby/object:Gem::Version
45
- version: '0'
46
- - !ruby/object:Gem::Dependency
47
- name: sinatra
48
- requirement: !ruby/object:Gem::Requirement
49
- none: false
50
- requirements:
51
- - - ! '>='
52
- - !ruby/object:Gem::Version
53
- version: '0'
54
- type: :runtime
55
- prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ! '>='
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- - !ruby/object:Gem::Dependency
63
- name: atomic
64
- requirement: !ruby/object:Gem::Requirement
65
- none: false
66
- requirements:
67
- - - ! '>='
68
- - !ruby/object:Gem::Version
69
- version: '0'
70
- type: :runtime
71
- prerelease: false
72
- version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
- requirements:
75
- - - ! '>='
76
- - !ruby/object:Gem::Version
77
- version: '0'
78
- - !ruby/object:Gem::Dependency
79
- name: guard-coffeescript
80
- requirement: !ruby/object:Gem::Requirement
81
- none: false
82
- requirements:
83
- - - ! '>='
84
- - !ruby/object:Gem::Version
85
- version: '0'
86
- type: :development
87
- prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
- requirements:
91
- - - ! '>='
92
- - !ruby/object:Gem::Version
93
- version: '0'
12
+
13
+ date: 2012-09-15 00:00:00 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: hot_bunnies
17
+ prerelease: false
18
+ requirement: &id001 !ruby/object:Gem::Requirement
19
+ none: false
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 1.4.0.pre3
24
+ type: :runtime
25
+ version_requirements: *id001
26
+ - !ruby/object:Gem::Dependency
27
+ name: thor
28
+ prerelease: false
29
+ requirement: &id002 !ruby/object:Gem::Requirement
30
+ none: false
31
+ requirements:
32
+ - - ">="
33
+ - !ruby/object:Gem::Version
34
+ version: "0"
35
+ type: :runtime
36
+ version_requirements: *id002
37
+ - !ruby/object:Gem::Dependency
38
+ name: sinatra
39
+ prerelease: false
40
+ requirement: &id003 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ version: "0"
46
+ type: :runtime
47
+ version_requirements: *id003
48
+ - !ruby/object:Gem::Dependency
49
+ name: atomic
50
+ prerelease: false
51
+ requirement: &id004 !ruby/object:Gem::Requirement
52
+ none: false
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: "0"
57
+ type: :runtime
58
+ version_requirements: *id004
59
+ - !ruby/object:Gem::Dependency
60
+ name: json
61
+ prerelease: false
62
+ requirement: &id005 !ruby/object:Gem::Requirement
63
+ none: false
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: "0"
68
+ type: :runtime
69
+ version_requirements: *id005
70
+ - !ruby/object:Gem::Dependency
71
+ name: guard-coffeescript
72
+ prerelease: false
73
+ requirement: &id006 !ruby/object:Gem::Requirement
74
+ none: false
75
+ requirements:
76
+ - - ">="
77
+ - !ruby/object:Gem::Version
78
+ version: "0"
79
+ type: :development
80
+ version_requirements: *id006
94
81
  description: RabbitMQ JRuby based workers on top of hot_bunnies
95
- email:
96
- - jondotan@gmail.com
97
- executables:
98
- - frenzy_bunnies
82
+ email:
83
+ - jondotan@gmail.com
84
+ executables:
85
+ - frenzy_bunnies
99
86
  extensions: []
87
+
100
88
  extra_rdoc_files: []
101
- files:
102
- - .gitignore
103
- - Gemfile
104
- - Guardfile
105
- - LICENSE
106
- - README.md
107
- - Rakefile
108
- - bin/frenzy_bunnies
109
- - examples/feed.rb
110
- - examples/feed_worker.rb
111
- - examples/feed_workers_bin.rb
112
- - frenzy_bunnies.gemspec
113
- - lib/frenzy_bunnies.rb
114
- - lib/frenzy_bunnies/cli.rb
115
- - lib/frenzy_bunnies/context.rb
116
- - lib/frenzy_bunnies/health.rb
117
- - lib/frenzy_bunnies/health/collector.rb
118
- - lib/frenzy_bunnies/health/providers/jvm.rb
119
- - lib/frenzy_bunnies/queue_factory.rb
120
- - lib/frenzy_bunnies/version.rb
121
- - lib/frenzy_bunnies/web.rb
122
- - lib/frenzy_bunnies/web/public/css/bootstrap.min.css
123
- - lib/frenzy_bunnies/web/public/index.html
124
- - lib/frenzy_bunnies/web/public/js/app.coffee
125
- - lib/frenzy_bunnies/web/public/js/app.js
126
- - lib/frenzy_bunnies/web/public/js/backbone-min.js
127
- - lib/frenzy_bunnies/web/public/js/bootstrap.js
128
- - lib/frenzy_bunnies/web/public/js/bootstrap.min.js
129
- - lib/frenzy_bunnies/web/public/js/jquery-1.8.0.min.js
130
- - lib/frenzy_bunnies/web/public/js/jquery.filesize.js
131
- - lib/frenzy_bunnies/web/public/js/jquery.timeago.js
132
- - lib/frenzy_bunnies/web/public/js/underscore-min.js
133
- - lib/frenzy_bunnies/worker.rb
134
- homepage: ''
89
+
90
+ files:
91
+ - .gitignore
92
+ - Gemfile
93
+ - Guardfile
94
+ - LICENSE
95
+ - README.md
96
+ - Rakefile
97
+ - bin/frenzy_bunnies
98
+ - examples/feed.rb
99
+ - examples/feed_worker.rb
100
+ - examples/feed_workers_bin.rb
101
+ - fb-cap.png
102
+ - frenzy_bunnies.gemspec
103
+ - lib/frenzy_bunnies.rb
104
+ - lib/frenzy_bunnies/cli.rb
105
+ - lib/frenzy_bunnies/context.rb
106
+ - lib/frenzy_bunnies/health.rb
107
+ - lib/frenzy_bunnies/health/collector.rb
108
+ - lib/frenzy_bunnies/health/providers/jvm.rb
109
+ - lib/frenzy_bunnies/queue_factory.rb
110
+ - lib/frenzy_bunnies/version.rb
111
+ - lib/frenzy_bunnies/web.rb
112
+ - lib/frenzy_bunnies/web/public/css/bootstrap.min.css
113
+ - lib/frenzy_bunnies/web/public/img/bunny16.png
114
+ - lib/frenzy_bunnies/web/public/img/bunny32.png
115
+ - lib/frenzy_bunnies/web/public/index.html
116
+ - lib/frenzy_bunnies/web/public/js/app.coffee
117
+ - lib/frenzy_bunnies/web/public/js/app.js
118
+ - lib/frenzy_bunnies/web/public/js/backbone-min.js
119
+ - lib/frenzy_bunnies/web/public/js/bootstrap.js
120
+ - lib/frenzy_bunnies/web/public/js/bootstrap.min.js
121
+ - lib/frenzy_bunnies/web/public/js/jquery-1.8.0.min.js
122
+ - lib/frenzy_bunnies/web/public/js/jquery.filesize.js
123
+ - lib/frenzy_bunnies/web/public/js/jquery.timeago.js
124
+ - lib/frenzy_bunnies/web/public/js/underscore-min.js
125
+ - lib/frenzy_bunnies/worker.rb
126
+ homepage: ""
135
127
  licenses: []
128
+
136
129
  post_install_message:
137
130
  rdoc_options: []
138
- require_paths:
139
- - lib
140
- required_ruby_version: !ruby/object:Gem::Requirement
131
+
132
+ require_paths:
133
+ - lib
134
+ required_ruby_version: !ruby/object:Gem::Requirement
141
135
  none: false
142
- requirements:
143
- - - ! '>='
144
- - !ruby/object:Gem::Version
145
- version: '0'
146
- required_rubygems_version: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ version: "0"
140
+ required_rubygems_version: !ruby/object:Gem::Requirement
147
141
  none: false
148
- requirements:
149
- - - ! '>='
150
- - !ruby/object:Gem::Version
151
- version: '0'
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: "0"
152
146
  requirements: []
147
+
153
148
  rubyforge_project:
154
- rubygems_version: 1.8.23
149
+ rubygems_version: 1.8.15
155
150
  signing_key:
156
151
  specification_version: 3
157
152
  summary: RabbitMQ JRuby based workers on top of hot_bunnies
158
153
  test_files: []
159
- has_rdoc:
154
+