uptime_monitor 0.3.3 → 0.4.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 +4 -4
- data/Gemfile +0 -2
- data/Gemfile.lock +0 -9
- data/VERSION +1 -1
- data/lib/uptime_monitor.rb +17 -8
- data/lib/uptime_monitor/browser.rb +1 -2
- data/lib/uptime_monitor/parser.rb +1 -1
- data/lib/uptime_monitor/screen_shot_uploader.rb +11 -2
- data/uptime_monitor.gemspec +3 -9
- metadata +2 -30
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d31072fda959108755276c4be18050a230e4c682
|
4
|
+
data.tar.gz: cdf3a21d0f302854bee9306dd64c09dbfd025bf8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 36414722c61033a0c0d1e29573f5daa6f7dad7481f439c18dff68551085aca591607a4b04db9e41429f91d63bcede6728227baeda01bdb8769a91f85a3139232
|
7
|
+
data.tar.gz: 6d65089d839bb555c3454f83ba2eae73d21de0a3a6064827e7ed199d7b1aeac09dabb136b6041589d4c6b11c77e377ffd1e9b114212027792396414869ce4d44
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -15,16 +15,11 @@ GEM
|
|
15
15
|
thread_safe (~> 0.3, >= 0.3.4)
|
16
16
|
tzinfo (~> 1.1)
|
17
17
|
addressable (2.4.0)
|
18
|
-
aws (2.10.2)
|
19
|
-
http_connection
|
20
|
-
uuidtools
|
21
|
-
xml-simple
|
22
18
|
aws-s3 (0.6.3)
|
23
19
|
builder
|
24
20
|
mime-types
|
25
21
|
xml-simple
|
26
22
|
builder (3.2.2)
|
27
|
-
carrierwave (0.4.10)
|
28
23
|
childprocess (0.5.9)
|
29
24
|
ffi (~> 1.0, >= 1.0.11)
|
30
25
|
coderay (1.1.1)
|
@@ -45,7 +40,6 @@ GEM
|
|
45
40
|
hashie (3.4.3)
|
46
41
|
headless (1.0.2)
|
47
42
|
highline (1.7.8)
|
48
|
-
http_connection (1.4.4)
|
49
43
|
i18n (0.7.0)
|
50
44
|
jeweler (2.0.1)
|
51
45
|
builder
|
@@ -109,7 +103,6 @@ GEM
|
|
109
103
|
polyglot (~> 0.3)
|
110
104
|
tzinfo (1.2.2)
|
111
105
|
thread_safe (~> 0.1)
|
112
|
-
uuidtools (2.1.5)
|
113
106
|
watir-webdriver-performance (0.2.4)
|
114
107
|
watir-webdriver
|
115
108
|
websocket (1.2.2)
|
@@ -120,10 +113,8 @@ PLATFORMS
|
|
120
113
|
|
121
114
|
DEPENDENCIES
|
122
115
|
activesupport
|
123
|
-
aws
|
124
116
|
aws-s3
|
125
117
|
bundler (~> 1.0)
|
126
|
-
carrierwave (= 0.4.10)
|
127
118
|
headless (~> 1.0.2)
|
128
119
|
jeweler (~> 2.0.1)
|
129
120
|
pry
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.4.0
|
data/lib/uptime_monitor.rb
CHANGED
@@ -3,8 +3,7 @@ require 'watir-webdriver'
|
|
3
3
|
require 'watir-webdriver-performance'
|
4
4
|
require 'ostruct'
|
5
5
|
require 'active_support'
|
6
|
-
require '
|
7
|
-
require 'aws'
|
6
|
+
require 'aws/s3'
|
8
7
|
|
9
8
|
def require_all(path)
|
10
9
|
Dir.glob(File.dirname(__FILE__) + path + '/*.rb') do |file|
|
@@ -20,14 +19,24 @@ end
|
|
20
19
|
RAGIOS_HERCULES_SCREENSHOT_DIR = "#{Dir.pwd}/screenshots/tmp"
|
21
20
|
RAGIOS_HERCULES_ENABLE_SCREENSHOTS = ENV['RAGIOS_HERCULES_ENABLE_SCREENSHOTS'] == 'true' ? true : false
|
22
21
|
|
22
|
+
RAGIOS_HERCULES_S3_DIR = ENV["RAGIOS_HERCULES_S3_DIR"]
|
23
|
+
|
24
|
+
def file_age(name)
|
25
|
+
(Time.now - File.ctime(name))/(24*3600)
|
26
|
+
end
|
27
|
+
|
28
|
+
def clear_screenshots_cache!
|
29
|
+
Dir.chdir(RAGIOS_HERCULES_SCREENSHOT_DIR)
|
30
|
+
Dir.glob("*.*").each { |filename| File.delete(filename) if file_age(filename) > 1 }
|
31
|
+
end
|
32
|
+
|
23
33
|
if RAGIOS_HERCULES_ENABLE_SCREENSHOTS
|
24
34
|
setup_screenshot_dir
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
CarrierWave.clean_cached_files!
|
35
|
+
AWS::S3::Base.establish_connection!(
|
36
|
+
:access_key_id => ENV['AMAZON_ACCESS_KEY_ID'],
|
37
|
+
:secret_access_key => ENV['AMAZON_SECRET_ACCESS_KEY']
|
38
|
+
)
|
39
|
+
clear_screenshots_cache!
|
31
40
|
end
|
32
41
|
|
33
42
|
require_all '/uptime_monitor'
|
@@ -114,8 +114,7 @@ module Hercules
|
|
114
114
|
@browser.screenshot.save(filename)
|
115
115
|
file = File.open(filename)
|
116
116
|
uploader = Hercules::UptimeMonitor::ScreenShotUploader.new
|
117
|
-
uploader.store
|
118
|
-
uploader.url
|
117
|
+
uploader.store(file)
|
119
118
|
end
|
120
119
|
private
|
121
120
|
def goto(url, browser_name)
|
@@ -14,7 +14,7 @@ module Hercules
|
|
14
14
|
return (description ? ast.description : ast.content)
|
15
15
|
else
|
16
16
|
parser.failure_reason =~ /^(Expected .+) after/m
|
17
|
-
raise(Hercules::UptimeMonitor::ParserSyntaxError.new(error: "syntax error"), "syntax error") if $1.blank?
|
17
|
+
raise(Hercules::UptimeMonitor::ParserSyntaxError.new(error: "syntax error"), "syntax error") if ($1.nil? || $1.blank?)
|
18
18
|
message =
|
19
19
|
"#{$1.gsub("\n", '$NEWLINE')}:" << "\n" <<
|
20
20
|
data.lines.to_a[parser.failure_line - 1] << "\n" <<
|
@@ -1,7 +1,16 @@
|
|
1
1
|
module Hercules
|
2
2
|
module UptimeMonitor
|
3
|
-
class ScreenShotUploader
|
4
|
-
|
3
|
+
class ScreenShotUploader
|
4
|
+
def store(file)
|
5
|
+
current_key = "screenshot#{Time.now.to_i}.png"
|
6
|
+
AWS::S3::S3Object.store(current_key, open(file), RAGIOS_HERCULES_S3_DIR)
|
7
|
+
AWS::S3::S3Object.url_for(
|
8
|
+
current_key,
|
9
|
+
RAGIOS_HERCULES_S3_DIR,
|
10
|
+
use_ssl: true,
|
11
|
+
expires_in: 31557600
|
12
|
+
)
|
13
|
+
end
|
5
14
|
end
|
6
15
|
end
|
7
16
|
end
|
data/uptime_monitor.gemspec
CHANGED
@@ -2,16 +2,16 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
-
# stub: uptime_monitor 0.
|
5
|
+
# stub: uptime_monitor 0.4.0 ruby lib
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
8
|
s.name = "uptime_monitor"
|
9
|
-
s.version = "0.
|
9
|
+
s.version = "0.4.0"
|
10
10
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
12
12
|
s.require_paths = ["lib"]
|
13
13
|
s.authors = ["obi-a"]
|
14
|
-
s.date = "2016-
|
14
|
+
s.date = "2016-03-06"
|
15
15
|
s.description = "A Ragios plugin that uses a real web browser to monitor transactions on a website for availability"
|
16
16
|
s.email = "obioraakubue@yahoo.com"
|
17
17
|
s.extra_rdoc_files = [
|
@@ -55,8 +55,6 @@ Gem::Specification.new do |s|
|
|
55
55
|
s.add_runtime_dependency(%q<watir-webdriver>, [">= 0"])
|
56
56
|
s.add_runtime_dependency(%q<watir-webdriver-performance>, ["~> 0.2.4"])
|
57
57
|
s.add_runtime_dependency(%q<activesupport>, [">= 0"])
|
58
|
-
s.add_runtime_dependency(%q<carrierwave>, ["= 0.4.10"])
|
59
|
-
s.add_runtime_dependency(%q<aws>, [">= 0"])
|
60
58
|
s.add_runtime_dependency(%q<aws-s3>, [">= 0"])
|
61
59
|
s.add_runtime_dependency(%q<treetop>, [">= 0"])
|
62
60
|
s.add_development_dependency(%q<rspec>, [">= 0"])
|
@@ -69,8 +67,6 @@ Gem::Specification.new do |s|
|
|
69
67
|
s.add_dependency(%q<watir-webdriver>, [">= 0"])
|
70
68
|
s.add_dependency(%q<watir-webdriver-performance>, ["~> 0.2.4"])
|
71
69
|
s.add_dependency(%q<activesupport>, [">= 0"])
|
72
|
-
s.add_dependency(%q<carrierwave>, ["= 0.4.10"])
|
73
|
-
s.add_dependency(%q<aws>, [">= 0"])
|
74
70
|
s.add_dependency(%q<aws-s3>, [">= 0"])
|
75
71
|
s.add_dependency(%q<treetop>, [">= 0"])
|
76
72
|
s.add_dependency(%q<rspec>, [">= 0"])
|
@@ -84,8 +80,6 @@ Gem::Specification.new do |s|
|
|
84
80
|
s.add_dependency(%q<watir-webdriver>, [">= 0"])
|
85
81
|
s.add_dependency(%q<watir-webdriver-performance>, ["~> 0.2.4"])
|
86
82
|
s.add_dependency(%q<activesupport>, [">= 0"])
|
87
|
-
s.add_dependency(%q<carrierwave>, ["= 0.4.10"])
|
88
|
-
s.add_dependency(%q<aws>, [">= 0"])
|
89
83
|
s.add_dependency(%q<aws-s3>, [">= 0"])
|
90
84
|
s.add_dependency(%q<treetop>, [">= 0"])
|
91
85
|
s.add_dependency(%q<rspec>, [">= 0"])
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: uptime_monitor
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- obi-a
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-03-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: headless
|
@@ -66,34 +66,6 @@ dependencies:
|
|
66
66
|
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: carrierwave
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - '='
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: 0.4.10
|
76
|
-
type: :runtime
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - '='
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: 0.4.10
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: aws
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - ">="
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '0'
|
90
|
-
type: :runtime
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - ">="
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '0'
|
97
69
|
- !ruby/object:Gem::Dependency
|
98
70
|
name: aws-s3
|
99
71
|
requirement: !ruby/object:Gem::Requirement
|