riemann-ssllabs 0.0.1

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.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/bin/riemann-ssllabs +50 -0
  3. metadata +72 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 5926812b87cbcdc704e0bb409d98205c4f3f0349
4
+ data.tar.gz: 0bdf9fbd54effcb168dadd984880688325872a5a
5
+ SHA512:
6
+ metadata.gz: f676d31a351a2cce37a26c2c314925303a45a893cc22cffd24efd5f03da1f424a87ac92a60d25b205ac159ca22490ee7cf29a446ff711e74c2104bbd963321ee
7
+ data.tar.gz: c9325fbd7982ebd2200d4bf24e5efb3b22df85181836e116eb7cb316a536abe64719bc7266811b7bc2a9eca67101b60a2088e5eb0c5ea49861b650fed72627a6
@@ -0,0 +1,50 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # Send ssllab grade to riemann
4
+
5
+ require 'riemann/tools'
6
+
7
+ class Riemann::Tools::Ssllabs
8
+ include Riemann::Tools
9
+
10
+ require 'ssllabs'
11
+ require 'json'
12
+
13
+ opt :ssllab_host, "ssllab host", :default => 'google.com'
14
+
15
+ def initialize
16
+ options[:interval] = 3600
17
+ options[:ttl] = 7200
18
+ end
19
+
20
+ def tick
21
+ api = ::Ssllabs::Api.new
22
+ r = api.analyse(host: opts[:ssllab_host], publish: 'off', startNew: 'on')
23
+
24
+ while r.status != "READY" and r.status != "ERROR" do
25
+ sleep(5)
26
+ r = api.analyse(host: opts[:ssllab_host], publish: 'off')
27
+ end
28
+
29
+ data = {
30
+ :host => opts[:ssllab_host].dup,
31
+ :service => "ssllab-grade",
32
+ :metric => r.grade,
33
+ :tags => ['ssllab']
34
+ }
35
+
36
+ data[:state] =
37
+ case data[:metric]
38
+ when /^[DF]/
39
+ "critical"
40
+ when /^C/
41
+ "warning"
42
+ else
43
+ "ok"
44
+ end
45
+
46
+ report(data)
47
+ end
48
+ end
49
+
50
+ Riemann::Tools::Ssllabs.run
metadata ADDED
@@ -0,0 +1,72 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: riemann-ssllabs
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Jeff Wong
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-11-10 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: riemann-tools
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.2.1
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 0.2.1
27
+ - !ruby/object:Gem::Dependency
28
+ name: ssllabs
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.24'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.24'
41
+ description:
42
+ email: awole20@gmail.com
43
+ executables:
44
+ - riemann-ssllabs
45
+ extensions: []
46
+ extra_rdoc_files: []
47
+ files:
48
+ - bin/riemann-ssllabs
49
+ homepage: https://github.com/featheredtoast/riemann-ssllabs
50
+ licenses: []
51
+ metadata: {}
52
+ post_install_message:
53
+ rdoc_options: []
54
+ require_paths:
55
+ - lib
56
+ required_ruby_version: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: 2.2.4
61
+ required_rubygems_version: !ruby/object:Gem::Requirement
62
+ requirements:
63
+ - - ">="
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ requirements: []
67
+ rubyforge_project: riemann-ssllabs
68
+ rubygems_version: 2.4.8
69
+ signing_key:
70
+ specification_version: 4
71
+ summary: Send ssllab grade to riemann
72
+ test_files: []