Skip to content

Commit

Permalink
Merge pull request #16 from jhsubscribe/master
Browse files Browse the repository at this point in the history
Basic Mongo 3 support for metrics-mongodb.rb
  • Loading branch information
eheydrick committed Nov 12, 2015
2 parents bbaa6e3 + b78b0e9 commit 62eb54e
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 11 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ This project adheres to [Semantic Versioning](http://semver.org/).
This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachangelog.com/)

## Unreleased
### Fixed
- Stopped trying to gather indexCounters data from mongo 3 (metrics-mongodb.rb)

## [0.0.6] - 2015-10-13
### Fixed
Expand Down
20 changes: 12 additions & 8 deletions bin/metrics-mongodb.rb
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,9 @@ def run
end

def gather_replication_metrics(server_status)
mongo_version = server_status['version'].gsub(/[^0-9\.]/i, '') # Handle versions like "2.6.11-pre" etc
server_metrics = {}

server_metrics['lock.ratio'] = "#{sprintf('%.5f', server_status['globalLock']['ratio'])}" unless server_status['globalLock']['ratio'].nil?

server_metrics['lock.queue.total'] = server_status['globalLock']['currentQueue']['total']
Expand All @@ -103,14 +105,16 @@ def gather_replication_metrics(server_status)
server_metrics['connections.current'] = server_status['connections']['current']
server_metrics['connections.available'] = server_status['connections']['available']

if server_status['indexCounters']['btree'].nil?
server_metrics['indexes.missRatio'] = "#{sprintf('%.5f', server_status['indexCounters']['missRatio'])}"
server_metrics['indexes.hits'] = server_status['indexCounters']['hits']
server_metrics['indexes.misses'] = server_status['indexCounters']['misses']
else
server_metrics['indexes.missRatio'] = "#{sprintf('%.5f', server_status['indexCounters']['btree']['missRatio'])}"
server_metrics['indexes.hits'] = server_status['indexCounters']['btree']['hits']
server_metrics['indexes.misses'] = server_status['indexCounters']['btree']['misses']
if Gem::Version.new(mongo_version) < Gem::Version.new('3.0.0')
if server_status['indexCounters']['btree'].nil?
server_metrics['indexes.missRatio'] = "#{sprintf('%.5f', server_status['indexCounters']['missRatio'])}"
server_metrics['indexes.hits'] = server_status['indexCounters']['hits']
server_metrics['indexes.misses'] = server_status['indexCounters']['misses']
else
server_metrics['indexes.missRatio'] = "#{sprintf('%.5f', server_status['indexCounters']['btree']['missRatio'])}"
server_metrics['indexes.hits'] = server_status['indexCounters']['btree']['hits']
server_metrics['indexes.misses'] = server_status['indexCounters']['btree']['misses']
end
end

server_metrics['cursors.open'] = server_status['cursors']['totalOpen']
Expand Down
6 changes: 3 additions & 3 deletions sensu-plugins-mongodb.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -42,9 +42,9 @@ Gem::Specification.new do |s|
s.test_files = s.files.grep(%r{^(test|spec|features)/})
s.version = SensuPluginsMongoDB::Version::VER_STRING

s.add_runtime_dependency 'bson', '1.9.2'
s.add_runtime_dependency 'bson_ext', '1.9.2'
s.add_runtime_dependency 'mongo', '1.9.2'
s.add_runtime_dependency 'bson', '1.12.3'
s.add_runtime_dependency 'bson_ext', '1.12.3'
s.add_runtime_dependency 'mongo', '1.12.3'
s.add_runtime_dependency 'sensu-plugin', '1.2.0'

s.add_development_dependency 'bundler', '~> 1.7'
Expand Down

0 comments on commit 62eb54e

Please sign in to comment.