bosh-monitor 1.3202.0 → 1.3213.0

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
  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