consul-templaterb 1.5.7 → 1.5.8

Sign up to get free protection for your applications and to get access to all the features.
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