Class: Bipbip::Plugin::SocketRedis

Inherits:
Bipbip::Plugin show all
Defined in:
lib/bipbip/plugin/socket_redis.rb

Instance Attribute Summary

Attributes inherited from Bipbip::Plugin

#config, #metric_group, #name, #pid

Instance Method Summary collapse

Methods inherited from Bipbip::Plugin

factory, #frequency, #initialize, #interrupt, #interrupted?, #metrics_names, #run, #source_identifier

Methods included from InterruptibleSleep

#interrupt_sleep, #interruptible_sleep

Constructor Details

This class inherits a constructor from Bipbip::Plugin

Instance Method Details

#metrics_schemaObject



7
8
9
10
11
12
# File 'lib/bipbip/plugin/socket_redis.rb', line 7

def metrics_schema
  [
      {:name => 'channels_count', :type => 'gauge', :unit => 'Channels'},
      {:name => 'subscribers_count', :type => 'gauge', :unit => 'Subscribers'},
  ]
end

#monitorObject



14
15
16
17
18
19
20
# File 'lib/bipbip/plugin/socket_redis.rb', line 14

def monitor
  stats = fetch_socket_redis_status
  {
      'channels_count' => stats.length,
      'subscribers_count' => stats.values.reduce(0) { |memo, channel| memo += channel['subscribers'].length },
  }
end