Module: XymonClient

Defined in:
lib/xymonclient.rb,
lib/xymonclient/helpers.rb,
lib/xymonclient/service.rb,
lib/xymonclient/version.rb,
lib/xymonclient/discovery.rb,
lib/xymonclient/exception.rb,
lib/xymonclient/serviceitem.rb

Defined Under Namespace

Classes: Client, ERBContext, InvalidDuration, InvalidHost, InvalidServer, InvalidService, InvalidServiceItem, InvalidStatus, NoXymonServerDefined, PartialSendFailure, SendFailure, ServerDiscovery, Service, ServiceItem, ServiceItemGauge, ServiceItemString

Constant Summary collapse

TIMESTRING_DEFINITION =
{
  '' => 60,
  'm' => 60,
  'h' => 60 * 60,
  'd' => 60 * 60 * 24,
  'w' => 60 * 60 * 24 * 7
}.freeze
VERSION =
'0.4.0'.freeze

Class Method Summary collapse

Class Method Details

.hostsvc(host, service) ⇒ Object



24
25
26
27
28
# File 'lib/xymonclient/helpers.rb', line 24

def self.hostsvc(host, service)
  raise XymonClient::InvalidHost, host if host == ''
  raise XymonClient::InvalidService, service if service == ''
  host.tr('.', ',') + '.' + service
end

.timestring_to_time(timestring) ⇒ Object

Raises:

  • (InvalidTimeString)


18
19
20
21
22
# File 'lib/xymonclient/helpers.rb', line 18

def self.timestring_to_time(timestring)
  time_matched = /^([0-9]+)([hmdw]{0,1})$/.match(timestring)
  raise InvalidTimeString unless time_matched
  time_matched[1].to_i * TIMESTRING_DEFINITION[time_matched[2]]
end

.valid_duration?(duration) ⇒ Boolean

Returns:

  • (Boolean)


14
15
16
# File 'lib/xymonclient/helpers.rb', line 14

def self.valid_duration?(duration)
  duration =~ /^[0-9]+[hmwd]?$/
end

.valid_status?(status) ⇒ Boolean

Returns:

  • (Boolean)


10
11
12
# File 'lib/xymonclient/helpers.rb', line 10

def self.valid_status?(status)
  %w(green yellow red purple blue clear).include?(status)
end