como_client 0.2.3 → 0.4.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ab9253e8d9983f4a79a171c3c6124bdb8f786a40d7d463bf3109ff8c25bbd06b
4
- data.tar.gz: 61ddb59d3c4c052f1b0050b2df496a94fe64b8cb9159ecdaa7af478e95a11277
3
+ metadata.gz: 32d33cc8687a74812acadd07405192a046683f8f3d087b3e8619d504d7f70242
4
+ data.tar.gz: 8a991ccc887b6a84ffc8865b0901652711425c2781bbf8bf9480d39b8cc60e98
5
5
  SHA512:
6
- metadata.gz: e9b71acaca9eccc469ac7a72b047eabbbb04a5470202747524e11238056b72d8448a7ab169dbb9bc11dd582d0f3360f4c8cfa6495bff7d61e6f14bc1e484b4fc
7
- data.tar.gz: 66bc2761e483b967fb06a02e3682474c39bc284b7b0956dab05a048258a45707b0869c2911c0e14c6a8e0a0ce2ec8b25037e316e5722133b6142e718a3e391ed
6
+ metadata.gz: 71a0036a8945bc487c99a3b52282577c2a53bba473bfb0a8c11320daae366306bee339b18daa0d58ef03d0c4adccfb42aa1fe0a3cc6ac4556ffd9beb0e70368a
7
+ data.tar.gz: 12974584aad84cc4b2c93dd6878a5988fb884da73ec3bbadbdc13080de63fd80cd293ca3d94f3cafd5b72ecd7250e5e8a1f75b561aeba7cf466659f18a19421d
data/como_client.gemspec CHANGED
@@ -32,7 +32,7 @@ Gem::Specification.new do |spec|
32
32
 
33
33
  spec.add_development_dependency 'rspec', '~> 3.9.0'
34
34
  spec.add_dependency 'concurrent-ruby', '~> 1.1.5'
35
- spec.add_dependency 'prometheus-client', '~> 1.0'
35
+ spec.add_dependency 'prometheus-client', '~> 4.0'
36
36
  spec.add_dependency 'usagewatch_ext', '~> 0.2.1'
37
37
  spec.add_dependency 'mem_info', '~> 1.0.1'
38
38
  end
@@ -6,20 +6,18 @@ module COMOClient
6
6
  require 'mem_info'
7
7
 
8
8
  def self.register
9
- logger = Logger.new(STDOUT)
10
- logger.info("register CF metrics...")
9
+ COMOClient.logger.debug("register CF metrics...")
11
10
 
12
11
  prometheus = Prometheus::Client.registry
13
12
 
14
13
  hardwareGauges = Prometheus::Client::Gauge.new( :instance_metrics, docstring: 'instance hardware metrics', labels: [:hardware])
15
14
  prometheus.register(hardwareGauges)
16
- logger.info("registered hardware gauges")
15
+ COMOClient.logger.debug("registered hardware gauges")
17
16
 
18
- logger.info("registered CF metrics")
17
+ COMOClient.logger.debug("registered CF metrics")
19
18
  end
20
19
  def self.update
21
- logger = Logger.new(STDOUT)
22
- logger.info("update CF metrics...")
20
+ COMOClient.logger.debug("update CF metrics...")
23
21
  prometheus = Prometheus::Client.registry
24
22
 
25
23
  usw = Usagewatch
@@ -33,9 +31,8 @@ module COMOClient
33
31
  hardwareGauges.set(usw.uw_diskused_perc, labels: { hardware: 'disk_used_perc'})
34
32
  hardwareGauges.set(usw.uw_diskused, labels: { hardware: 'disk_used_gigabytes'})
35
33
  hardwareGauges.set(IO.read('/proc/uptime').split[0].to_i, labels: { hardware: 'uptime_seconds'})
36
- logger.info("instance gauges")
37
34
 
38
- logger.info("updated CF metrics")
35
+ COMOClient.logger.debug("updated CF metrics")
39
36
  end
40
37
  end
41
38
  end
@@ -1,23 +1,21 @@
1
1
  module COMOClient
2
2
  module Metrics
3
3
  def self.register
4
- logger = Logger.new(STDOUT)
5
- logger.info("register metrics...")
4
+ COMOClient.logger.debug("register metrics...")
6
5
 
7
6
  #Register Cloud Froundry metrics if the app is pushed to Cloud Foundry
8
7
  COMOClient::Metrics::CF.register if !ENV["CF_INSTANCE_GUID"].nil?
9
8
 
10
- logger.info("registered metrics")
9
+ COMOClient.logger.debug("registered metrics")
11
10
  end
12
11
 
13
12
  def self.update
14
- logger = Logger.new(STDOUT)
15
- logger.info("update metrics...")
13
+ COMOClient.logger.debug("update metrics...")
16
14
 
17
15
  #Update Cloud Froundry metrics if the app is pushed to Cloud Foundry
18
16
  COMOClient::Metrics::CF.update if !ENV["CF_INSTANCE_GUID"].nil?
19
17
 
20
- logger.info("updated metrics")
18
+ COMOClient.logger.debug("updated metrics")
21
19
  end
22
20
  end
23
21
  end
@@ -5,16 +5,15 @@ module COMOClient
5
5
  require 'prometheus/client/push'
6
6
  def self.push
7
7
  # register some metrics
8
- logger = Logger.new(STDOUT)
9
- logger.info("pushing metrics to #{COMOClient.configuration.pushgateway_url}")
10
- logger.info("job: #{COMOClient.configuration.job_name}")
11
- logger.info("instance: #{COMOClient.configuration.instance_name}")
8
+ COMOClient.logger.debug("pushing metrics to #{COMOClient.configuration.pushgateway_url}")
9
+ COMOClient.logger.debug("job: #{COMOClient.configuration.job_name}")
10
+ COMOClient.logger.debug("instance: #{COMOClient.configuration.instance_name}")
12
11
  COMOClient::Metrics.update
13
- Prometheus::Client::Push.new(COMOClient.configuration.job_name, #job name
14
- COMOClient.configuration.instance_name,#instance name
15
- COMOClient.configuration.pushgateway_url)#pushgateway url
12
+ Prometheus::Client::Push.new(job: COMOClient.configuration.job_name, #job name
13
+ instance: COMOClient.configuration.instance_name,#instance name
14
+ gateway: COMOClient.configuration.pushgateway_url)#pushgateway url
16
15
  .add(Prometheus::Client.registry)
17
- logger.info("successfully pushed metrics")
16
+ COMOClient.logger.debug("successfully pushed metrics")
18
17
  end
19
18
  end
20
19
  end
@@ -1,3 +1,3 @@
1
1
  module COMOClient
2
- VERSION = "0.2.3"
2
+ VERSION = "0.4.0"
3
3
  end
data/lib/como_client.rb CHANGED
@@ -10,11 +10,17 @@ require 'prometheus/middleware/exporter'
10
10
  require 'prometheus/middleware/collector'
11
11
 
12
12
  module COMOClient
13
+ def self.logger
14
+ @@logger ||= defined?(Rails) ? Rails.logger : Logger.new(STDOUT)
15
+ end
16
+
17
+ def self.logger=(logger)
18
+ @@logger = logger
19
+ end
13
20
 
14
21
  class Railtie < Rails::Railtie
15
22
  initializer 'como_client.configure_rails_initialization' do
16
23
  Rails.configuration.middleware.use Prometheus::Middleware::Collector
17
- Rails.configuration.middleware.use Prometheus::Middleware::Exporter
18
24
  end
19
25
  end
20
26
 
@@ -36,10 +42,10 @@ module COMOClient
36
42
  end
37
43
 
38
44
  def self.run
39
- logger = Logger.new(STDOUT)
40
- logger.info("initialize metrics push service...")
45
+
46
+ COMOClient.logger.debug("initialise metrics push service...")
41
47
  if @pushTask and @pushTask.running?
42
- logger.info("the metrics push service is already running!")
48
+ COMOClient.logger.debug("push service is already running!")
43
49
  return true
44
50
  end
45
51
 
@@ -47,7 +53,7 @@ module COMOClient
47
53
  @pushTask = Concurrent::TimerTask.new(execution_interval: @configuration.push_interval, timeout_interval: 20){COMOClient::Tasks::PeriodicPush.push}
48
54
  @pushTask.add_observer(COMOClient::Tasks::Observer.new)
49
55
  @pushTask.execute
50
- logger.info("successfully initiated metrics push service!")
56
+ COMOClient.logger.info("push service initialised")
51
57
  @pushTask.running?
52
58
  end
53
59
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: como_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Disler Colin
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-01-15 00:00:00.000000000 Z
11
+ date: 2022-08-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '1.0'
47
+ version: '4.0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '1.0'
54
+ version: '4.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: usagewatch_ext
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -109,7 +109,7 @@ licenses:
109
109
  - MIT
110
110
  metadata:
111
111
  allowed_push_host: https://rubygems.org
112
- post_install_message:
112
+ post_install_message:
113
113
  rdoc_options: []
114
114
  require_paths:
115
115
  - lib
@@ -124,8 +124,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
124
124
  - !ruby/object:Gem::Version
125
125
  version: '0'
126
126
  requirements: []
127
- rubygems_version: 3.0.6
128
- signing_key:
127
+ rubygems_version: 3.1.6
128
+ signing_key:
129
129
  specification_version: 4
130
130
  summary: A Prometheus Client for continuous monitoring
131
131
  test_files: []