genesis_collector 0.1.1 → 0.1.2

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: 3b2e03cab980845ca9507d7144cf6c2e5c2f963e
4
- data.tar.gz: 4d2f71a19ca57b6f75abf368462547947e8c1835
3
+ metadata.gz: 89801327d2b4c78491a59f2d22dc330f571fe4dc
4
+ data.tar.gz: 5b27adc1e03b01166c22bce635f698d51118d6a1
5
5
  SHA512:
6
- metadata.gz: 26dc74e0d71d1358dda78373f3f1cc52280369294bb91605aad04556dd18238de0c0049b5c461e3d7c931e39cf8a8faac7df8cdd144e1e669e2945e5c6273e1e
7
- data.tar.gz: 6af10f655a6934a501780d4c3b44252864c7d0271acc22a574a845b7bc889d5af1367a4b3e356445e96cf92e88db9d7b196b9d7e5a5f6487380585b9a2ac22b2
6
+ metadata.gz: 027f6f52d55fa33c610915e957128579939969d475f3ac990da609c5d69842a0cbf384f65bfba6e077a9e647dd07aadc9b228e573a16b109ed914b3a1d50dd0e
7
+ data.tar.gz: 7ca7cf8b437072889d3111c5da64a58ddde9517c436b4c35d67ab2d4663492fddb45601a81d3805f73cf3f4b8ef0a1d1960e1befabbed6f6015abac0957ec768
@@ -18,9 +18,10 @@ module GenesisCollector
18
18
  @payload[:network_interfaces] = interfaces.reduce([]) { |memo, (k, v)| memo << v.merge(name: k) }
19
19
  @payload[:network_interfaces].each do |i|
20
20
  lshw_interface = get_lshw_data.network_interfaces.select { |lshw_i| lshw_i[:name] == i[:name] }[0]
21
+ i[:status] = read_interface_info(i[:name], 'operstate')
21
22
  i[:mac_address] = read_mac_address(i[:name])
22
23
  i[:product] = lshw_interface.try(:[], :product)
23
- i[:speed] = (read_interface_info(i[:name], 'speed').to_i * 1000000).to_s
24
+ i[:speed] = (i[:status] == 'up' ? get_interface_speed(i[:name]) : nil)
24
25
  i[:vendor_name] = lshw_interface.try(:[], :vendor_name)
25
26
  i[:duplex] = read_interface_info(i[:name], 'duplex')
26
27
  i[:link_type] = lshw_interface.try(:[], :link_type)
@@ -48,6 +49,11 @@ module GenesisCollector
48
49
  { driver: value.match(/^driver: (.*)/)[1], driver_version: value.match(/^version: (.*)/)[1] }
49
50
  end
50
51
 
52
+ def get_interface_speed(interface)
53
+ return 0 if read_interface_info(interface, 'carrier') == '0'
54
+ (read_interface_info(interface, 'speed').to_i * 1000000).to_s
55
+ end
56
+
51
57
  def get_network_neighbor(interface_name)
52
58
  @lldp_data ||= parse_lldp
53
59
  @lldp_data[interface_name]
@@ -1,3 +1,3 @@
1
1
  module GenesisCollector
2
- VERSION = '0.1.1'
2
+ VERSION = '0.1.2'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: genesis_collector
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Radcliffe
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-02-29 00:00:00.000000000 Z
11
+ date: 2016-03-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri