consul-templaterb 1.5.7 → 1.5.8

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: ced33aa72d9f144f338dd896e962ad57577f0580a590a7cf9c4151ddf4f9c12c
4
- data.tar.gz: 27627d161c46451eeb383d3d69797004eb3d2b9c7fda4d74e50315c332c5b9e9
3
+ metadata.gz: '07836a796fda9c6b6c7e2273b0ad75e5c8248d3e4331f78f9ff898ed001fef4b'
4
+ data.tar.gz: 27874e394149fd25bc40be6eacf99ef916c91b5795582a7ba381b5362f43aa90
5
5
  SHA512:
6
- metadata.gz: 57472c838bcd831aced8a7331b058ea8a87bc4a50b1a61b5e62b6dd46dd7ac48712b626c374f5643d5ef2a7627fe9d268f05559af395d978a3ac35dcd74e28e5
7
- data.tar.gz: '063973ff971f13077e2b8e8c41a93d107662b1154286933ad0211320f1a8bcb3d42ed0482ecebf3822fe545b8a6a24c2c48b4d7770df39aa75f426759de668f2'
6
+ metadata.gz: f8e6c2e9210e21e671395dfca15c8a80f5a763510712613528c2441c571fd1c6f54a96930546b833c763b63a40db927dad9b5a6cf37b7c1143217e8bcab58894
7
+ data.tar.gz: aac441891b0ba00789ae068ef3d694b3e4e3487c716359ca037bfd3de22c9a946b534a86b86b36ad1e7fc15a42453a09db841a91df6853eb50dfee2eaad6d25a
data/CHANGELOG.md CHANGED
@@ -2,6 +2,16 @@
2
2
 
3
3
  ## (UNRELEASED)
4
4
 
5
+ ## 1.5.8 (November 14, 2018)
6
+
7
+ IMPROVEMENTS:
8
+
9
+ * Add consul_service_changes_total metric in samples/metrics.erb
10
+
11
+ BUG FIXES:
12
+
13
+ * Remove metrics timestamping in samples/metrics.erb to allow datapoint collection when there are no changes on a service
14
+
5
15
  ## 1.5.7 (November 12, 2018)
6
16
 
7
17
  NEW FEATURES:
@@ -31,7 +31,8 @@ module Consul
31
31
  @net_info = {
32
32
  success: 0,
33
33
  errors: 0,
34
- bytes_read: 0
34
+ bytes_read: 0,
35
+ changes: 0
35
36
  }
36
37
  @context = {
37
38
  current_erb_path: nil,
@@ -3,13 +3,14 @@ require 'consul/async/utilities'
3
3
  module Consul
4
4
  module Async
5
5
  class EndPointStats
6
- attr_reader :successes, :errors, :start, :body_bytes, :last_error, :last_success
6
+ attr_reader :successes, :errors, :start, :body_bytes, :last_error, :last_success, :changes
7
7
 
8
8
  def initialize
9
9
  @start = Time.now.utc
10
10
  @successes = 0
11
11
  @errors = 0
12
12
  @body_bytes = 0
13
+ @changes = 0
13
14
  @last_error = @start
14
15
  @last_success = @start
15
16
  end
@@ -18,6 +19,7 @@ module Consul
18
19
  @last_success = Time.now.utc
19
20
  @successes += 1
20
21
  @body_bytes = body_bytes + res.http.response.bytesize
22
+ @changes += res.modified? ? 1 : 0
21
23
  end
22
24
 
23
25
  def on_error(_http)
@@ -1,5 +1,5 @@
1
1
  module Consul
2
2
  module Async
3
- VERSION = '1.5.7'.freeze
3
+ VERSION = '1.5.8'.freeze
4
4
  end
5
5
  end
data/samples/metrics.erb CHANGED
@@ -62,32 +62,33 @@ consul_services_count <%= service_count %> <%= services(tag: service_tag_filter)
62
62
 
63
63
  # HELP consul_service_count A gauge of number instances of service with their current state
64
64
  # TYPE consul_service_count gauge
65
- # HELP consul_service_stats_requests_total A counter of requests performed by consul-templaterb, show activity on a service
65
+ # HELP consul_service_stats_requests_total A counter of requests performed by consul-templaterb, shows activity on a service
66
66
  # TYPE consul_service_stats_requests_total counter
67
67
  # HELP consul_service_stats_requests_bytes A counter of bytes transfered from Consul Agent to consul-templaterb
68
68
  # TYPE consul_service_stats_requests_bytes counter
69
69
  # HELP consul_service_stats_requests_bytes_per_sec A counter of bytes transfered from Consul Agent to consul-templaterb
70
70
  # TYPE consul_service_stats_requests_bytes_per_sec gauge
71
+ # HELP consul_service_changes_total A counter of changes that occured on a service
72
+ # TYPE consul_service_changes_total counter
71
73
 
72
74
  <%
73
75
  json_backends = {}
74
76
  now = Time.now.utc
75
- now_ms = now.to_i * 1000
76
77
  backends.each_pair do |service_name, service_info|
77
- last_update = service_info[:stats].last_success_or_error.to_i * 1000
78
78
  service_info[:state].each_pair do |state_name, state_count|
79
- %>consul_service_count{service="<%= service_name %>",state="<%= state_name %>"} <%= state_count %> <%= last_update %>
79
+ %>consul_service_count{service="<%= service_name %>",state="<%= state_name %>"} <%= state_count %>
80
80
  <%
81
81
  end
82
82
  current_stats = service_info[:stats]
83
- %>consul_service_stats_requests_total{service="<%= service_name %>",type="success"} <%= current_stats.successes %> <%= last_update %>
83
+ %>consul_service_stats_requests_total{service="<%= service_name %>",type="success"} <%= current_stats.successes %>
84
84
  <%
85
85
  if current_stats.errors > 0
86
- %>consul_service_stats_requests_total{service="<%= service_name %>",type="errors"} <%= current_stats.errors %> <%= last_update %>
86
+ %>consul_service_stats_requests_total{service="<%= service_name %>",type="errors"} <%= current_stats.errors %>
87
87
  <%
88
88
  end
89
- %>consul_service_stats_requests_bytes{service="<%= service_name %>"} <%= service_info[:stats].body_bytes %> <%= last_update %>
90
- consul_service_stats_requests_bytes_per_sec{service="<%= service_name %>"} <%= service_info[:stats].bytes_per_sec(now) %> <%= now_ms %>
89
+ %>consul_service_stats_requests_bytes{service="<%= service_name %>"} <%= service_info[:stats].body_bytes %>
90
+ consul_service_stats_requests_bytes_per_sec{service="<%= service_name %>"} <%= service_info[:stats].bytes_per_sec(now) %>
91
+ consul_service_changes_total{service="<%= service_name %>"} <%= service_info[:stats].changes %>
91
92
 
92
93
  <%
93
94
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: consul-templaterb
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.7
4
+ version: 1.5.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - SRE Core Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-11-12 00:00:00.000000000 Z
11
+ date: 2018-11-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: em-http-request
@@ -227,7 +227,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
227
227
  version: '0'
228
228
  requirements: []
229
229
  rubyforge_project:
230
- rubygems_version: 2.7.7
230
+ rubygems_version: 2.7.8
231
231
  signing_key:
232
232
  specification_version: 4
233
233
  summary: Implementation of Consul template using Ruby and .erb templating language