mtr_monitor 0.16.0 → 0.17.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: 1e0a4d3f371a9d89ecdda17a93bc368d0999a0de
4
- data.tar.gz: 04b02c94334b6a0ff36aea4f92c0c441a53f2a77
3
+ metadata.gz: 7a5b73e216e4f4642e16dc0b769917d06066b64d
4
+ data.tar.gz: 98e96a4cadc9e78772508f523bd697a743f39adb
5
5
  SHA512:
6
- metadata.gz: 5acc3eb578fc4d02ec5373e0a3c1714a2ec1378d08d18a851faba5640a6c45f9bc1caf5f78e71a5c2780071123c767b9e3f21723dea8361b34d533635e72aa37
7
- data.tar.gz: 889d4fb307dea20645ebf8b8fa6c5d013e055b3c63cf8dd26a956dbe9f40afc9bee21edde9e7897572b17a8de16cce61f6bd93368ecd0dc358421fb59614c042
6
+ metadata.gz: 0e559a6faf9421c5b179475f3624bc18bbd9fab54035ff29dbd8b773085e5334ba1bf3126eab0c0cb0562b78f30eb5ce3233c5d68892a83c8ea6bbcc74532680
7
+ data.tar.gz: 525113b7d28fae27e0036f7d68ca13c6cabd702c0232453c8362ed5ea25d8d099797e866c55da05015d7dc109fd99f1949acfed4d6550bf542b315f29d317b35
data/Gemfile.lock CHANGED
@@ -1,14 +1,22 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- mtr_monitor (0.16.0)
4
+ mtr_monitor (0.17.0)
5
+ logdna
5
6
  rt-watchman (~> 0.10.0)
6
7
 
7
8
  GEM
8
9
  remote: https://rubygems.org/
9
10
  specs:
11
+ concurrent-ruby (1.0.5)
10
12
  diff-lcs (1.2.5)
13
+ json (2.1.0)
14
+ logdna (1.1.1)
15
+ concurrent-ruby (~> 1.0)
16
+ json (~> 2.0)
17
+ require_all (~> 1.4)
11
18
  rake (10.3.2)
19
+ require_all (1.5.0)
12
20
  rspec (3.4.0)
13
21
  rspec-core (~> 3.4.0)
14
22
  rspec-expectations (~> 3.4.0)
data/exe/mtr_report CHANGED
@@ -16,6 +16,7 @@ aws_secret_access_key = ENV.fetch("AWS_SECRET_ACCESS_KEY")
16
16
  mtr_options = ENV.fetch("MTR_OPTIONS", "")
17
17
  sleep_time = ENV.fetch("SLEEP_TIME", "5").to_i
18
18
  dig_ip_address = ENV.fetch("DIG_IP_ADDRESS").downcase == "yes" ? true : false
19
+ logdna_ingestion_key = ENV.fetch("LOGDNA_INGESTION_KEY")
19
20
 
20
21
  Watchman.host = ENV.fetch("WATCHMAN_HOST")
21
22
  Watchman.port = ENV.fetch("WATCHMAN_PORT", 8125).to_i
@@ -23,13 +24,14 @@ Watchman.prefix = "mtr-monitor.prod"
23
24
 
24
25
  loop do
25
26
  report = MtrMonitor::Report.new(name,
26
- domain,
27
- s3_bucket,
28
- mtr_options,
29
- aws_access_key_id,
30
- aws_secret_access_key,
31
- dig_ip_address,
32
- logger)
27
+ domain,
28
+ s3_bucket,
29
+ mtr_options,
30
+ aws_access_key_id,
31
+ aws_secret_access_key,
32
+ dig_ip_address,
33
+ logdna_ingestion_key,
34
+ logger)
33
35
 
34
36
  logger.info "Generating report"
35
37
  report.generate
data/lib/mtr_monitor.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  require "watchman"
2
2
  require "logger"
3
+ require "logdna"
3
4
 
4
5
  require "mtr_monitor/version"
5
6
  require "mtr_monitor/hop"
@@ -30,7 +31,7 @@ module MtrMonitor
30
31
  attr_reader :logger
31
32
  attr_reader :host_ip_address
32
33
 
33
- def initialize(name, domain, s3_bucket, mtr_options, aws_access_key_id, aws_secret_access_key, dig_ip_address, logger = nil)
34
+ def initialize(name, domain, s3_bucket, mtr_options, aws_access_key_id, aws_secret_access_key, dig_ip_address, logdna_ingestion_key, logger = nil)
34
35
  @name = name
35
36
  @domain = domain
36
37
  @s3_bucket = s3_bucket
@@ -41,6 +42,11 @@ module MtrMonitor
41
42
  @hostname = `hostname`.strip
42
43
  @dig_ip_address = dig_ip_address
43
44
  @logger = logger || Logger.new(STDOUT)
45
+ @logdna = Logdna::Ruby.new(logdna_ingestion_key,
46
+ :ip => @host_ip_address,
47
+ :app => "MTR monitor",
48
+ :meta => { :route => @name },
49
+ :level => "DEBUG")
44
50
 
45
51
  path = "#{@name}/#{Time.now.strftime("%Y-%m-%d")}/#{@host_ip_address.gsub(".", "-")}/#{Time.now.utc.strftime("%H-%M")}.log"
46
52
 
@@ -54,10 +60,16 @@ module MtrMonitor
54
60
 
55
61
  generate_local_report
56
62
  upload_to_s3
63
+ emit_provider_to_logdna
57
64
 
58
65
  MtrMonitor::Metrics.submit(@log_path, @hostname, @name, @logger)
59
66
  end
60
67
 
68
+ def emit_provider_to_logdna
69
+ @logdna.log("Network provider: Telia") if File.read(@log_path).include?("telia.net")
70
+ @logdna.log("Network provider: GTT") if File.read(@log_path).include?("gtt.net")
71
+ end
72
+
61
73
  def generate_local_report
62
74
  destination = @dig_ip_address ? dig : @domain
63
75
 
@@ -1,3 +1,3 @@
1
1
  module MtrMonitor
2
- VERSION = "0.16.0"
2
+ VERSION = "0.17.0"
3
3
  end
data/mtr_monitor.gemspec CHANGED
@@ -19,6 +19,7 @@ Gem::Specification.new do |spec|
19
19
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
20
  spec.require_paths = ["lib"]
21
21
 
22
+ spec.add_dependency "logdna"
22
23
  spec.add_dependency "rt-watchman", "~> 0.10.0"
23
24
 
24
25
  spec.add_development_dependency "bundler", "~> 1.16"
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mtr_monitor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.0
4
+ version: 0.17.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - RenderedText DevOps Team
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-01-09 00:00:00.000000000 Z
11
+ date: 2018-01-10 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: logdna
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: rt-watchman
15
29
  requirement: !ruby/object:Gem::Requirement