bosh-monitor 1.3202.0 → 1.3213.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
  SHA1:
3
- metadata.gz: 1f302c26785140ed359f8b15a41cb50fb0f0ce85
4
- data.tar.gz: 108d8fd7d6cb4d702244d7dec10ef82ee624703d
3
+ metadata.gz: 4bf6d8fb84e0abb36c5d8ccda918ecdb34fb91f1
4
+ data.tar.gz: afb5d2d9e99f5a741d10cbe024d14f743073faab
5
5
  SHA512:
6
- metadata.gz: 1bdee94f2066f64f0b939c613c5e76dd5ded9a48b71f587ad28432de0b525560be5ef8c4b917bd72a223274d2312612b75a65b50beb9cd004d0eecab413d9d80
7
- data.tar.gz: 6d05ab9c6ad5aeef56d13fa239c9305a7bd8ba08b6cfae50a305bf8bec5d1cae4e3dc811437d6f4b931c35a15956f81f6f06760bf5d7aae2aed44e8ae7f2522d
6
+ metadata.gz: c42bb8edb352150f5433825623045f3fc3e89e5f81087ec2ada81722d386a6ec4736d29032db7810d11e9175c0b2a11ebf28031a8d22f03fba6225cbc7e1bcf7
7
+ data.tar.gz: 941fb7c74c30fc98b08b0331fd01b2b954c3deed2b6af0a42a8d63c5cbc9ffb4566192bfac2aaff4a070a81621e026e4588cd49ac1e976331d2baead0cd0b32e
@@ -28,8 +28,14 @@ module Bosh::Monitor
28
28
  end
29
29
 
30
30
  def name
31
- if @deployment && @job && @index
32
- "#{@deployment}: #{@job}(#{@index}) [id=#{@id}, instance_id=#{@instance_id}, cid=#{@cid}]"
31
+ if @deployment && @job && @instance_id
32
+ name = "#{@deployment}: #{@job}(#{@instance_id}) [id=#{@id}, "
33
+
34
+ if @index
35
+ name = name + "index=#{@index}, "
36
+ end
37
+
38
+ name + "cid=#{@cid}]"
33
39
  else
34
40
  state = ATTRIBUTES.inject([]) do |acc, attribute|
35
41
  value = send(attribute)
@@ -124,7 +124,7 @@ module Bosh::Monitor
124
124
  return false
125
125
  end
126
126
 
127
- @logger.info("Adding agent #{vm_data['agent_id']} (#{vm_data['job']}/#{vm_data['index']}) to #{deployment_name}...")
127
+ @logger.info("Adding agent #{vm_data['agent_id']} (#{vm_data['job']}/#{vm_data['id']}) to #{deployment_name}...")
128
128
 
129
129
  agent_id = vm_data['agent_id']
130
130
 
@@ -10,7 +10,7 @@ module Bosh::Monitor
10
10
 
11
11
  SERVICE_AUXILIARY_JOBS = Set.new(%w(serialization_data_server backup_manager))
12
12
 
13
- attr_reader :agent_id, :deployment, :job, :index, :metrics
13
+ attr_reader :agent_id, :deployment, :job, :index, :metrics, :node_id
14
14
 
15
15
  def initialize(attributes = {})
16
16
  super
@@ -30,7 +30,7 @@ module Bosh::Monitor
30
30
  @tags = {}
31
31
  @tags["job"] = @job if @job
32
32
  @tags["index"] = @index if @index
33
- @tags["node_id"] = @node_id if @node_id
33
+ @tags["id"] = @node_id if @node_id
34
34
  @tags["role"] = guess_role
35
35
 
36
36
  @vitals = @attributes["vitals"] || {}
@@ -60,7 +60,13 @@ module Bosh::Monitor
60
60
  end
61
61
 
62
62
  def short_description
63
- "Heartbeat from #{@job}/#{@index} (agent_id=#{@agent_id} node_id=#{@node_id}) @ #{@timestamp.utc}"
63
+ description = "Heartbeat from #{@job}/#{@node_id} (agent_id=#{@agent_id}"
64
+
65
+ if @index && !@index.empty?
66
+ description = description + " index=#{@index}"
67
+ end
68
+
69
+ description + ") @ #{@timestamp.utc}"
64
70
  end
65
71
 
66
72
  def to_s
@@ -32,7 +32,8 @@ The Consul plugin works by forwarding nats heartbeat events and alerts to a cons
32
32
  ```ruby
33
33
  {
34
34
  :agent => agent_id,
35
- :name => "job_name / index",
35
+ :name => "job_name / node_id",
36
+ :id => node_id,
36
37
  :state => job_state,
37
38
  :data => {
38
39
  :cpu => [sys, user, wait]
@@ -15,7 +15,7 @@ module Bosh::Monitor
15
15
  end
16
16
 
17
17
  def process(event)
18
- if event.is_a? Bosh::Monitor::Events::Heartbeat
18
+ if (event.is_a? Bosh::Monitor::Events::Heartbeat) && event.node_id
19
19
  aws_cloud_watch.put_metric_data(heartbeat_to_cloudwatch_metric(event))
20
20
  end
21
21
  end
@@ -35,9 +35,10 @@ module Bosh::Monitor
35
35
  @dimensions ||= [
36
36
  {name: "job", value: heartbeat.job},
37
37
  {name: "index", value: heartbeat.index},
38
- {name: "name", value: "#{heartbeat.job}/#{heartbeat.index}"},
38
+ {name: "name", value: "#{heartbeat.job}/#{heartbeat.node_id}"},
39
39
  {name: "deployment", value: heartbeat.deployment},
40
- {name: "agent_id", value: heartbeat.agent_id}
40
+ {name: "agent_id", value: heartbeat.agent_id},
41
+ {name: "id", value: heartbeat.node_id}
41
42
  ]
42
43
  end
43
44
 
@@ -71,11 +71,11 @@ module Bosh::Monitor
71
71
 
72
72
  #should an individual alert or heartbeat be forwarded as a consul event
73
73
  def forward_this_event?(event)
74
- @use_events && ( event.is_a?(Bosh::Monitor::Events::Alert) || ( event.is_a?(Bosh::Monitor::Events::Heartbeat) && @heartbeats_as_alerts) )
74
+ @use_events && (event.is_a?(Bosh::Monitor::Events::Alert) || ( event.is_a?(Bosh::Monitor::Events::Heartbeat) && @heartbeats_as_alerts && event.node_id))
75
75
  end
76
76
 
77
77
  def forward_this_ttl?(event)
78
- @use_ttl && event.is_a?(Bosh::Monitor::Events::Heartbeat)
78
+ @use_ttl && event.is_a?(Bosh::Monitor::Events::Heartbeat) && event.node_id
79
79
  end
80
80
 
81
81
  def get_path_for_note_type(event, note_type)
@@ -105,7 +105,7 @@ module Bosh::Monitor
105
105
  end
106
106
 
107
107
  def label_for_ttl(event)
108
- "#{@namespace}#{event.job}_#{event.index}"
108
+ "#{@namespace}#{event.job}_#{event.node_id}"
109
109
  end
110
110
 
111
111
  # Notify consul of an event
@@ -136,7 +136,8 @@ module Bosh::Monitor
136
136
  #this should yield consistent results from the values method
137
137
  {
138
138
  :agent => body[:agent_id],
139
- :name => "#{body[:job]}/#{body[:index]}",
139
+ :name => "#{body[:job]}/#{body[:node_id]}",
140
+ :id => body[:node_id],
140
141
  :state => "#{body[:job_state]}",
141
142
  :data => {
142
143
  :cpu => vitals['cpu'].values,
@@ -27,7 +27,9 @@ module Bosh::Monitor
27
27
  def process(event)
28
28
  case event
29
29
  when Bosh::Monitor::Events::Heartbeat
30
- EM.defer { process_heartbeat(event) }
30
+ if event.node_id
31
+ EM.defer { process_heartbeat(event) }
32
+ end
31
33
  when Bosh::Monitor::Events::Alert
32
34
  EM.defer { process_alert(event) }
33
35
  else
@@ -41,6 +43,7 @@ module Bosh::Monitor
41
43
  tags = %W[
42
44
  job:#{heartbeat.job}
43
45
  index:#{heartbeat.index}
46
+ id:#{heartbeat.node_id}
44
47
  deployment:#{heartbeat.deployment}
45
48
  agent:#{heartbeat.agent_id}
46
49
  ]
@@ -17,7 +17,7 @@ module Bosh::Monitor
17
17
  end
18
18
 
19
19
  def process(event)
20
- if event.is_a? Bosh::Monitor::Events::Heartbeat
20
+ if (event.is_a? Bosh::Monitor::Events::Heartbeat) && event.node_id
21
21
 
22
22
  metrics = event.metrics
23
23
 
@@ -43,12 +43,12 @@ module Bosh::Monitor
43
43
  def get_metric_prefix(heartbeat)
44
44
  deployment = heartbeat.deployment
45
45
  job = heartbeat.job
46
- index = heartbeat.index
46
+ id = heartbeat.node_id
47
47
  agent_id = heartbeat.agent_id
48
48
  if options["prefix"]
49
- [options["prefix"], deployment, job, index, agent_id].join '.'
49
+ [options["prefix"], deployment, job, id, agent_id].join '.'
50
50
  else
51
- [deployment, job, index, agent_id].join '.'
51
+ [deployment, job, id, agent_id].join '.'
52
52
  end
53
53
  end
54
54
 
@@ -1,5 +1,5 @@
1
1
  module Bosh
2
2
  module Monitor
3
- VERSION = '1.3202.0'
3
+ VERSION = '1.3213.0'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bosh-monitor
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3202.0
4
+ version: 1.3213.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - VMware
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-02-23 00:00:00.000000000 Z
11
+ date: 2016-03-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: eventmachine