entombedvirus-munin_manager 0.1.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Manifest CHANGED
@@ -6,6 +6,7 @@ lib/munin_manager/log_reader.rb
6
6
  lib/munin_manager/plugins/haproxy_response_time.rb
7
7
  lib/munin_manager/plugins/network_latency.rb
8
8
  lib/munin_manager/plugins/packet_loss.rb
9
+ lib/munin_manager/plugins/rails_rendering.rb
9
10
  lib/munin_manager/plugins/rails_response_time.rb
10
11
  lib/munin_manager/plugins/scribe_net.rb
11
12
  lib/munin_manager/plugins/starling_age.rb
data/Rakefile CHANGED
@@ -1,5 +1,5 @@
1
1
  require 'echoe'
2
- Echoe.new('munin_manager', '0.0.9') do |s|
2
+ Echoe.new('munin_manager', '1.0.0') do |s|
3
3
  s.description = "Tool to maintain and install munin plugins written in Ruby"
4
4
  s.author = "Rohith Ravi"
5
5
  s.email = "entombedvirus@gmail.com"
@@ -0,0 +1,82 @@
1
+ module MuninManager
2
+ class Plugins::RailsRendering < LogReader
3
+ include ActsAsMuninPlugin
4
+
5
+ def data
6
+ @data ||= Hash.new {|h, k| h[k] = Array.new}
7
+ end
8
+
9
+ def scan(log_file)
10
+ loop do
11
+ line = log_file.readline
12
+ next unless line.match(/^Completed in/)
13
+
14
+ chunks = line.split(/\s/)
15
+ data[:total] << chunks[2].to_f
16
+ data[:rendering] << chunks[7].to_f
17
+ data[:memcache] << chunks[11].to_f
18
+ data[:db] << chunks[14].to_f
19
+ end
20
+ end
21
+
22
+ def process!
23
+ data.each_pair do |component, response_times|
24
+ data[component] = response_times.inject(0) {|sum, i| sum + i} / data[component].length rescue 0
25
+ end
26
+ end
27
+
28
+ def config
29
+ <<-LABEL
30
+ graph_title Rails Response Breakdown
31
+ graph_vlabel response time
32
+ graph_category Rails
33
+ total.label total
34
+ rendering.label rendering
35
+ db.label db
36
+ memcache.label memcache
37
+ LABEL
38
+ end
39
+
40
+ def values
41
+ data.map {|k, v| "#{format_for_munin(k)}.value #{"%.10f" % v}"}.join("\n")
42
+ end
43
+
44
+ def self.run
45
+ log_file = ENV['log_file'] || "/var/log/rails.log"
46
+ allowed_commands = ['config']
47
+
48
+ rails = new(log_file)
49
+
50
+ if cmd = ARGV[0] and allowed_commands.include? cmd then
51
+ puts rails.send(cmd.to_sym)
52
+ else
53
+ rails.collect!
54
+ puts rails.values
55
+ end
56
+ end
57
+
58
+ def self.help_text(options = {})
59
+ %Q{
60
+ #{plugin_name.capitalize} Munin Plugin
61
+ ===========================
62
+
63
+ Please remember to add something like the lines below to /etc/munin/plugin-conf.d/munin-node
64
+ if the rails log file is not at /var/log/rails.log
65
+
66
+ [#{options[:symlink] || plugin_name}]
67
+ env.log_file /var/log/custom/rails.log
68
+
69
+ Also, make sure that the '/var/lib/munin/plugin-state' is writable by munin.
70
+
71
+ $ sudo chmod 777 /var/lib/munin/plugin-state
72
+
73
+ }
74
+ end
75
+
76
+ private
77
+
78
+ def format_for_munin(str)
79
+ str.to_s.gsub(/[^A-Za-z0-9_]/, "_")
80
+ end
81
+ end
82
+ end
@@ -0,0 +1,77 @@
1
+ #! /usr/bin/env ruby
2
+ # Munin plugin for starling.
3
+ require 'rubygems'
4
+ require 'starling'
5
+ #Monkey patched so the namespaced queues are included in stats
6
+ require File.join(File.dirname(__FILE__), '..','starling', 'starling_stats')
7
+
8
+ module MuninManager
9
+ class Plugins::StarlingAge
10
+ include ActsAsMuninPlugin
11
+
12
+ def initialize(host, port)
13
+ @host = "#{host}:#{port}"
14
+ @starling = Starling.new(@host)
15
+ @category = 'starling'
16
+ end
17
+
18
+ def age_stats
19
+ defaults = {
20
+ :type => 'GAUGE',
21
+ :draw => 'AREA'
22
+ }
23
+ stats = @starling.available_queues.inject({}) do |stats, queue_name|
24
+ queue,item = queue_name.split(/:/, 2)
25
+ stats["queue_#{queue_name}_age"] = defaults.merge({
26
+ :label => "#{queue}[#{item}] age"
27
+ })
28
+ stats
29
+ end
30
+ end
31
+
32
+
33
+ def config
34
+ graph_names = age_stats.keys.map{|n| n.to_s.tr(':', '_')}
35
+ graph_config = <<-END.gsub(/ +/, '')
36
+ graph_title Starling Queues Age
37
+ graph_vlabel seconds in queue
38
+ graph_category #{@category}
39
+ graph_order #{graph_names.sort.join(' ')}
40
+ END
41
+
42
+ age_stats.inject(graph_config) do |stat_config, stat|
43
+ stat[1].each do |var,value|
44
+ graph_config << "#{format_for_munin(stat[0])}.#{var} #{value}\n"
45
+ end
46
+ graph_config
47
+ end
48
+ end
49
+
50
+ def values
51
+ age_stats.inject("") do |ret, stat|
52
+ ret << "#{format_for_munin(stat[0])}.value #{@starling.stats[@host][stat[0]]/100.0}\n"
53
+ end
54
+ end
55
+
56
+ def self.run
57
+ host = ENV['HOST'] || '127.0.0.1';
58
+ port = ENV['PORT'] || 22122;
59
+ starling = new(host, port)
60
+
61
+
62
+ allowed_commands = ['config']
63
+
64
+ if cmd = ARGV[0] and allowed_commands.include? cmd then
65
+ puts starling.send(cmd.to_sym)
66
+ else
67
+ puts starling.values
68
+ end
69
+ end
70
+
71
+ private
72
+
73
+ def format_for_munin(str)
74
+ str.to_s.gsub(/[^A-Za-z0-9_]/, "_")
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,81 @@
1
+ #! /usr/bin/env ruby
2
+ # Munin plugin for starling.
3
+ require 'rubygems'
4
+ require 'starling'
5
+ #Monkey patched so the namespaced queues are included in stats
6
+ require File.join(File.dirname(__FILE__), '..','starling', 'starling_stats')
7
+
8
+ module MuninManager
9
+ class Plugins::StarlingNet
10
+ include ActsAsMuninPlugin
11
+
12
+ def initialize(host, port)
13
+ @host = "#{host}:#{port}"
14
+ @starling = Starling.new(@host)
15
+ @category = 'starling'
16
+ end
17
+
18
+ def net_stats
19
+ stats = {
20
+ :bytes_read => {
21
+ :label => 'read',
22
+ :type => 'COUNTER',
23
+ :graph => 'no',
24
+ :cdef => 'bytes_read,8,*'
25
+ },
26
+ :bytes_written => {
27
+ :label => 'bps',
28
+ :type => 'COUNTER',
29
+ :cdef => 'bytes_written,8,*',
30
+ :negative => 'bytes_read'
31
+ }
32
+ }
33
+ return stats
34
+ end
35
+
36
+ def config
37
+ graph_config = <<-END.gsub(/ +/, '')
38
+ graph_title Starling traffic
39
+ graph_args --base 1000
40
+ graph_vlabel bits read(-) / written(+) per second
41
+ graph_category #{@category}
42
+ graph_order bytes_read bytes_written
43
+ END
44
+
45
+ stat_config = ''
46
+ net_stats.each do |stat,config|
47
+ config.each do |var,value|
48
+ stat_config << "#{stat}.#{var} #{value}\n"
49
+ end
50
+ end
51
+ return graph_config + stat_config
52
+ end
53
+
54
+ def values
55
+ ret = "bytes_read.value #{@starling.stats[@host]['bytes_read']}\n"
56
+ ret << "bytes_written.value #{@starling.stats[@host]['bytes_written']}\n"
57
+ end
58
+
59
+ def self.run
60
+ host = ENV['HOST'] || '127.0.0.1';
61
+ port = ENV['PORT'] || 22122;
62
+ starling = new(host, port)
63
+
64
+
65
+ allowed_commands = ['config']
66
+
67
+ if cmd = ARGV[0] and allowed_commands.include? cmd then
68
+ puts starling.send(cmd.to_sym)
69
+ else
70
+ puts starling.values
71
+ end
72
+ end
73
+
74
+ private
75
+
76
+ def format_for_munin(str)
77
+ str.to_s.gsub(/[^A-Za-z0-9_]/, "_")
78
+ end
79
+
80
+ end
81
+ end
@@ -0,0 +1,86 @@
1
+ #! /usr/bin/env ruby
2
+ # Munin plugin for starling.
3
+ require 'rubygems'
4
+ require 'starling'
5
+ #Monkey patched so the namespaced queues are included in stats
6
+ require File.join(File.dirname(__FILE__), '..','starling', 'starling_stats')
7
+
8
+ module MuninManager
9
+ class Plugins::StarlingOps
10
+ include ActsAsMuninPlugin
11
+
12
+ def initialize(host, port)
13
+ @host = "#{host}:#{port}"
14
+ @starling = Starling.new(@host)
15
+ @category = 'starling'
16
+ end
17
+
18
+ def ops_stats
19
+ defaults = {
20
+ 'min' => 0,
21
+ 'max' => 5000,
22
+ 'type' => 'DERIVE',
23
+ 'draw' => 'LINE2',
24
+ }
25
+ stats = {
26
+ 'cmd_get' => {:label => 'GETs'},
27
+ 'cmd_set' => {:label => 'SETs'},
28
+ 'get_hits' => {:label => 'Hits'},
29
+ 'get_misses' => {:label => 'Misses'}
30
+ }
31
+
32
+ stats.each_key do |k|
33
+ stats[k] = defaults.merge(stats[k])
34
+ end
35
+ return stats
36
+ end
37
+
38
+ def config
39
+ graph_config = <<-END.gsub(/ +/, '')
40
+ graph_title Starling Operations
41
+ graph_args --base 1000
42
+ graph_vlabel ops/${graph_period}
43
+ graph_category #{@category}
44
+ graph_order cmd_set cmd_get get_hits get_misses
45
+ END
46
+
47
+ stat_config = []
48
+ ops_stats.each do |stat,config|
49
+ config.each do |var,value|
50
+ stat_config << "#{stat}.#{var} #{value}\n"
51
+ end
52
+ end
53
+ return graph_config + stat_config.sort.join
54
+ end
55
+
56
+ def values
57
+ ret = ''
58
+ ops_stats.each_key do |stat|
59
+ ret << "#{stat}.value #{@starling.stats[@host][stat]}\n"
60
+ end
61
+ return ret
62
+ end
63
+
64
+ def self.run
65
+ host = ENV['HOST'] || '127.0.0.1';
66
+ port = ENV['PORT'] || 22122;
67
+ starling = new(host, port)
68
+
69
+
70
+ allowed_commands = ['config']
71
+
72
+ if cmd = ARGV[0] and allowed_commands.include? cmd then
73
+ puts starling.send(cmd.to_sym)
74
+ else
75
+ puts starling.values
76
+ end
77
+ end
78
+
79
+ private
80
+
81
+ def format_for_munin(str)
82
+ str.to_s.gsub(/[^A-Za-z0-9_]/, "_")
83
+ end
84
+
85
+ end
86
+ end
@@ -0,0 +1,84 @@
1
+ #! /usr/bin/env ruby
2
+ # Munin plugin for starling.
3
+ require 'rubygems'
4
+ require 'starling'
5
+ #Monkey patched so the namespaced queues are included in stats
6
+ require File.join(File.dirname(__FILE__), '..','starling', 'starling_stats')
7
+
8
+ module MuninManager
9
+ class Plugins::StarlingQueue
10
+ include ActsAsMuninPlugin
11
+
12
+ def initialize(host, port)
13
+ @host = "#{host}:#{port}"
14
+ @starling = Starling.new(@host)
15
+ @category = 'starling'
16
+ end
17
+
18
+ def queues_stats
19
+ defaults = {
20
+ 'type' => 'GAUGE',
21
+ 'draw' => 'LINE2'
22
+ }
23
+ stats = @starling.available_queues.inject({}) do |stats, queue_name|
24
+ queue,item = queue_name.split(/:/, 2)
25
+ stats["queue_#{queue_name}_items"] = defaults.merge({
26
+ :label => "#{queue}[#{item}] items"
27
+ })
28
+ stats["queue_#{queue_name}_expired_items"] = defaults.merge({
29
+ :label => "#{queue}[#{item}] expired"
30
+ })
31
+ stats
32
+ end
33
+
34
+ return stats
35
+ end
36
+
37
+ def config
38
+ graph_names = queues_stats.keys.map{|n| n.to_s.tr(':', '_')}
39
+ graph_config = <<-END.gsub(/ +/, '')
40
+ graph_title Starling queues
41
+ graph_args --base 1000
42
+ graph_vlabel items
43
+ graph_category #{@category}
44
+ graph_order #{graph_names.sort.join(' ')}
45
+ END
46
+
47
+ queues_stats.inject(graph_config) do |stat_config, stat|
48
+ stat[1].each do |var,value|
49
+ graph_config << "#{format_for_munin(stat[0])}.#{var} #{value}\n"
50
+ end
51
+ graph_config
52
+ end
53
+ end
54
+
55
+ def values
56
+ queues_stats.inject("") do |ret, stat|
57
+ ret << "#{format_for_munin(stat[0])}.value #{@starling.stats[@host][stat[0]]}\n"
58
+ end
59
+ end
60
+
61
+ def self.run
62
+ host = ENV['HOST'] || '127.0.0.1';
63
+ port = ENV['PORT'] || 22122;
64
+ starling = new(host, port)
65
+
66
+
67
+ allowed_commands = ['config']
68
+
69
+ if cmd = ARGV[0] and allowed_commands.include? cmd then
70
+ puts starling.send(cmd.to_sym)
71
+ else
72
+ puts starling.values
73
+ end
74
+ end
75
+
76
+ private
77
+
78
+ def format_for_munin(str)
79
+ str.to_s.gsub(/[^A-Za-z0-9_]/, "_")
80
+ end
81
+
82
+ end
83
+ end
84
+
@@ -0,0 +1,66 @@
1
+ class Starling
2
+ def stats
3
+ raise MemCacheError, "No active servers" unless active?
4
+ server_stats = {}
5
+
6
+ @servers.each do |server|
7
+ sock = server.socket
8
+ raise MemCacheError, "No connection to server" if sock.nil?
9
+
10
+ value = nil
11
+ begin
12
+ sock.write "stats\r\n"
13
+ stats = {}
14
+ while line = sock.gets do
15
+ break if line == "END\r\n"
16
+ if line =~ /^STAT/ then
17
+ stat, name, value = line.split
18
+ stats[name] = case name
19
+ when 'version'
20
+ value
21
+ when 'rusage_user', 'rusage_system' then
22
+ seconds, microseconds = value.split(/:/, 2)
23
+ microseconds ||= 0
24
+ Float(seconds) + (Float(microseconds) / 1_000_000)
25
+ else
26
+ if value =~ /^\d+$/ then
27
+ value.to_i
28
+ else
29
+ value
30
+ end
31
+ end
32
+ end
33
+ end
34
+ server_stats["#{server.host}:#{server.port}"] = stats
35
+ rescue SocketError, SystemCallError, IOError => err
36
+ puts err.inspect
37
+ server.close
38
+ raise MemCacheError, err.message
39
+ end
40
+ end
41
+
42
+ server_stats
43
+ end
44
+
45
+ ##
46
+ # returns the number of items in +queue+. If +queue+ is +:all+, a hash of all
47
+ # queue sizes will be returned.
48
+
49
+ def sizeof(queue, statistics = nil)
50
+ statistics ||= stats
51
+
52
+ if queue == :all
53
+ queue_sizes = {}
54
+ available_queues(statistics).each do |queue|
55
+ queue_sizes[queue] = sizeof(queue, statistics)
56
+ end
57
+ return queue_sizes
58
+ end
59
+
60
+ statistics.inject(0) { |m,(k,v)| m + v["queue_#{make_cache_key(queue)}_items"].to_i }
61
+ end
62
+
63
+ def queue_names
64
+ return available_queues
65
+ end
66
+ end
@@ -2,32 +2,35 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{munin_manager}
5
- s.version = "0.1.0"
5
+ s.version = "1.0.0"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Rohith Ravi"]
9
- s.date = %q{2009-04-13}
9
+ s.date = %q{2009-05-18}
10
10
  s.description = %q{Tool to maintain and install munin plugins written in Ruby}
11
11
  s.email = %q{entombedvirus@gmail.com}
12
12
  s.executables = ["munin_manager", "runner"]
13
- s.extra_rdoc_files = ["bin/munin_manager", "bin/runner", "ext/string.rb", "lib/munin_manager/acts_as_munin_plugin.rb", "lib/munin_manager/log_reader.rb", "lib/munin_manager/plugins/haproxy_response_time.rb", "lib/munin_manager/plugins/network_latency.rb", "lib/munin_manager/plugins/packet_loss.rb", "lib/munin_manager/plugins/rails_response_time.rb", "lib/munin_manager/plugins/scribe_net.rb", "lib/munin_manager/plugins.rb", "lib/munin_manager.rb", "README.markdown"]
14
- s.files = ["bin/munin_manager", "bin/runner", "ext/string.rb", "lib/munin_manager/acts_as_munin_plugin.rb", "lib/munin_manager/log_reader.rb", "lib/munin_manager/plugins/haproxy_response_time.rb", "lib/munin_manager/plugins/network_latency.rb", "lib/munin_manager/plugins/packet_loss.rb", "lib/munin_manager/plugins/rails_response_time.rb", "lib/munin_manager/plugins/scribe_net.rb", "lib/munin_manager/plugins.rb", "lib/munin_manager.rb", "Manifest", "munin_manager.gemspec", "Rakefile", "README.markdown", "test/haproxy_response_time_test.rb", "test/log_reader_test.rb", "test/rails_response_time_test.rb", "test/test_helper.rb"]
13
+ s.extra_rdoc_files = ["bin/munin_manager", "bin/runner", "ext/string.rb", "lib/munin_manager/acts_as_munin_plugin.rb", "lib/munin_manager/log_reader.rb", "lib/munin_manager/plugins/haproxy_response_time.rb", "lib/munin_manager/plugins/network_latency.rb", "lib/munin_manager/plugins/packet_loss.rb", "lib/munin_manager/plugins/rails_rendering.rb", "lib/munin_manager/plugins/rails_response_time.rb", "lib/munin_manager/plugins/scribe_net.rb", "lib/munin_manager/plugins/starling_age.rb", "lib/munin_manager/plugins/starling_net.rb", "lib/munin_manager/plugins/starling_ops.rb", "lib/munin_manager/plugins/starling_queue.rb", "lib/munin_manager/plugins.rb", "lib/munin_manager/starling/starling_stats.rb", "lib/munin_manager.rb", "README.markdown"]
14
+ s.files = ["bin/munin_manager", "bin/runner", "ext/string.rb", "lib/munin_manager/acts_as_munin_plugin.rb", "lib/munin_manager/log_reader.rb", "lib/munin_manager/plugins/haproxy_response_time.rb", "lib/munin_manager/plugins/network_latency.rb", "lib/munin_manager/plugins/packet_loss.rb", "lib/munin_manager/plugins/rails_rendering.rb", "lib/munin_manager/plugins/rails_response_time.rb", "lib/munin_manager/plugins/scribe_net.rb", "lib/munin_manager/plugins/starling_age.rb", "lib/munin_manager/plugins/starling_net.rb", "lib/munin_manager/plugins/starling_ops.rb", "lib/munin_manager/plugins/starling_queue.rb", "lib/munin_manager/plugins.rb", "lib/munin_manager/starling/starling_stats.rb", "lib/munin_manager.rb", "Manifest", "munin_manager.gemspec", "Rakefile", "README.markdown", "test/haproxy_response_time_test.rb", "test/log_reader_test.rb", "test/rails_response_time_test.rb", "test/test_helper.rb"]
15
15
  s.has_rdoc = true
16
16
  s.homepage = %q{}
17
17
  s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Munin_manager", "--main", "README.markdown"]
18
18
  s.require_paths = ["lib", "ext"]
19
19
  s.rubyforge_project = %q{munin_manager}
20
- s.rubygems_version = %q{1.3.1}
20
+ s.rubygems_version = %q{1.3.2}
21
21
  s.summary = %q{Tool to maintain and install munin plugins written in Ruby}
22
22
  s.test_files = ["test/haproxy_response_time_test.rb", "test/log_reader_test.rb", "test/rails_response_time_test.rb", "test/test_helper.rb"]
23
23
 
24
24
  if s.respond_to? :specification_version then
25
25
  current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
26
- s.specification_version = 2
26
+ s.specification_version = 3
27
27
 
28
28
  if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
29
+ s.add_development_dependency(%q<echoe>, [">= 0"])
29
30
  else
31
+ s.add_dependency(%q<echoe>, [">= 0"])
30
32
  end
31
33
  else
34
+ s.add_dependency(%q<echoe>, [">= 0"])
32
35
  end
33
36
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: entombedvirus-munin_manager
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rohith Ravi
@@ -9,10 +9,19 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-04-13 00:00:00 -07:00
12
+ date: 2009-05-18 00:00:00 -07:00
13
13
  default_executable:
14
- dependencies: []
15
-
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: echoe
17
+ type: :development
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
16
25
  description: Tool to maintain and install munin plugins written in Ruby
17
26
  email: entombedvirus@gmail.com
18
27
  executables:
@@ -29,9 +38,15 @@ extra_rdoc_files:
29
38
  - lib/munin_manager/plugins/haproxy_response_time.rb
30
39
  - lib/munin_manager/plugins/network_latency.rb
31
40
  - lib/munin_manager/plugins/packet_loss.rb
41
+ - lib/munin_manager/plugins/rails_rendering.rb
32
42
  - lib/munin_manager/plugins/rails_response_time.rb
33
43
  - lib/munin_manager/plugins/scribe_net.rb
44
+ - lib/munin_manager/plugins/starling_age.rb
45
+ - lib/munin_manager/plugins/starling_net.rb
46
+ - lib/munin_manager/plugins/starling_ops.rb
47
+ - lib/munin_manager/plugins/starling_queue.rb
34
48
  - lib/munin_manager/plugins.rb
49
+ - lib/munin_manager/starling/starling_stats.rb
35
50
  - lib/munin_manager.rb
36
51
  - README.markdown
37
52
  files:
@@ -43,9 +58,15 @@ files:
43
58
  - lib/munin_manager/plugins/haproxy_response_time.rb
44
59
  - lib/munin_manager/plugins/network_latency.rb
45
60
  - lib/munin_manager/plugins/packet_loss.rb
61
+ - lib/munin_manager/plugins/rails_rendering.rb
46
62
  - lib/munin_manager/plugins/rails_response_time.rb
47
63
  - lib/munin_manager/plugins/scribe_net.rb
64
+ - lib/munin_manager/plugins/starling_age.rb
65
+ - lib/munin_manager/plugins/starling_net.rb
66
+ - lib/munin_manager/plugins/starling_ops.rb
67
+ - lib/munin_manager/plugins/starling_queue.rb
48
68
  - lib/munin_manager/plugins.rb
69
+ - lib/munin_manager/starling/starling_stats.rb
49
70
  - lib/munin_manager.rb
50
71
  - Manifest
51
72
  - munin_manager.gemspec
@@ -85,7 +106,7 @@ requirements: []
85
106
  rubyforge_project: munin_manager
86
107
  rubygems_version: 1.2.0
87
108
  signing_key:
88
- specification_version: 2
109
+ specification_version: 3
89
110
  summary: Tool to maintain and install munin plugins written in Ruby
90
111
  test_files:
91
112
  - test/haproxy_response_time_test.rb