dumper 1.7.1 → 1.7.2
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/lib/dumper.rb +6 -1
- data/lib/dumper/agent.rb +1 -1
- data/lib/dumper/cli.rb +6 -6
- data/lib/dumper/dependency.rb +6 -5
- data/lib/dumper/job.rb +1 -1
- data/lib/dumper/utility/ip.rb +20 -0
- data/lib/dumper/{utility.rb → utility/log.rb} +13 -54
- data/lib/dumper/utility/object_finder.rb +9 -0
- data/lib/dumper/version.rb +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b601179630f672e78d097cc6b7bbe2a154a5b71e
|
4
|
+
data.tar.gz: 41058b3e711dc4ca68fade869be505c76d173358
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2ffc004b93fd9f0a936c9465edc864dfa266d4d02cb3302f1c0f07e2a162a63bde0ca98524adf0634963bfc9090b31c2e6ab4232574a30e0f39fed79343d9e45
|
7
|
+
data.tar.gz: b55a25b90634606ca9c19a214b42f8ae2d9ce990f0fdd4ccc669e9ccea81f58734234b8e00430e6d00409b75d6de7305d0d8cec213df2057e324a74f23a0cf29
|
data/lib/dumper.rb
CHANGED
@@ -6,7 +6,6 @@ module Dumper
|
|
6
6
|
autoload :Dependency, 'dumper/dependency'
|
7
7
|
autoload :Job, 'dumper/job'
|
8
8
|
autoload :Stack, 'dumper/stack'
|
9
|
-
autoload :Utility, 'dumper/utility'
|
10
9
|
autoload :VERSION, 'dumper/version'
|
11
10
|
|
12
11
|
module Database
|
@@ -16,4 +15,10 @@ module Dumper
|
|
16
15
|
autoload :MongoDB, 'dumper/database/mongodb'
|
17
16
|
autoload :Redis, 'dumper/database/redis'
|
18
17
|
end
|
18
|
+
|
19
|
+
module Utility
|
20
|
+
autoload :IP, 'dumper/utility/ip'
|
21
|
+
autoload :Log, 'dumper/utility/log'
|
22
|
+
autoload :ObjectFinder, 'dumper/utility/object_finder'
|
23
|
+
end
|
19
24
|
end
|
data/lib/dumper/agent.rb
CHANGED
data/lib/dumper/cli.rb
CHANGED
@@ -16,12 +16,12 @@ module Dumper
|
|
16
16
|
no_tasks do
|
17
17
|
def check_ip
|
18
18
|
print 'Checking IP address... '
|
19
|
-
|
20
|
-
print "#{
|
21
|
-
if
|
22
|
-
puts "
|
19
|
+
ip = Dumper::Utility::IP.new
|
20
|
+
print "#{ip.address} => "
|
21
|
+
if ip.private?
|
22
|
+
puts "Private IP, #{fetch_will_fail_warning}".color(:red)
|
23
23
|
else
|
24
|
-
puts '
|
24
|
+
puts 'Public IP, good'.color(:green)
|
25
25
|
end
|
26
26
|
end
|
27
27
|
|
@@ -64,7 +64,7 @@ module Dumper
|
|
64
64
|
end
|
65
65
|
|
66
66
|
def fetch_will_fail_warning
|
67
|
-
'warning - fetch from dumper.io to this server will fail
|
67
|
+
'warning - remote fetch from dumper.io to this server will fail. You will need to use the dumper gem with rails.'
|
68
68
|
end
|
69
69
|
end
|
70
70
|
end
|
data/lib/dumper/dependency.rb
CHANGED
@@ -1,15 +1,16 @@
|
|
1
1
|
module Dumper
|
2
2
|
class Dependency
|
3
3
|
LIBS = {
|
4
|
-
'thor'
|
5
|
-
'rainbow'
|
6
|
-
'net-ntp'
|
4
|
+
'thor' => { :version => '~> 0.19' },
|
5
|
+
'rainbow' => { :version => '~> 2.1', :require => 'rainbow/ext/string' },
|
6
|
+
'net-ntp' => { :version => '~> 2.1', :require => 'net/ntp' },
|
7
|
+
'ipaddress' => { :version => '~> 0.8.3' },
|
7
8
|
}
|
8
9
|
|
9
10
|
def self.load(name)
|
10
11
|
begin
|
11
|
-
gem
|
12
|
-
require
|
12
|
+
gem name, LIBS[name][:version]
|
13
|
+
require LIBS[name][:require] || name
|
13
14
|
rescue LoadError
|
14
15
|
abort <<-EOS
|
15
16
|
Dependency missing: #{name}
|
data/lib/dumper/job.rb
CHANGED
@@ -0,0 +1,20 @@
|
|
1
|
+
Dumper::Dependency.load('ipaddress')
|
2
|
+
require 'forwardable'
|
3
|
+
|
4
|
+
module Dumper
|
5
|
+
module Utility
|
6
|
+
class IP
|
7
|
+
extend Forwardable
|
8
|
+
def_delegators :@ip, :address, :private?
|
9
|
+
|
10
|
+
def initialize(*args)
|
11
|
+
UDPSocket.open do |s|
|
12
|
+
s.do_not_reverse_lookup = true
|
13
|
+
s.connect '64.233.187.99', 1
|
14
|
+
@ip = IPAddress(s.addr.last)
|
15
|
+
end
|
16
|
+
raise "#{@ip.address} is not IPv4!" unless @ip.ipv4?
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -1,39 +1,25 @@
|
|
1
|
-
require 'ipaddr'
|
2
1
|
require 'logger'
|
3
2
|
|
4
3
|
module Dumper
|
5
4
|
module Utility
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
def initialize(*args)
|
10
|
-
disable_reverse_lookup do
|
11
|
-
UDPSocket.open do |s|
|
12
|
-
s.connect '64.233.187.99', 1
|
13
|
-
@ip = s.addr.last
|
14
|
-
end
|
15
|
-
end
|
16
|
-
@ipaddr = Dumper::Utility::IPAddr.new(@ip)
|
5
|
+
module Log
|
6
|
+
def logger
|
7
|
+
@@logger ||= Dumper::Utility::SlimLogger.new("#{Rails.root}/log/dumper_agent.log", 1, 10.megabytes)
|
17
8
|
end
|
18
9
|
|
19
|
-
def
|
20
|
-
|
21
|
-
Socket.do_not_reverse_lookup = true
|
22
|
-
begin
|
23
|
-
yield
|
24
|
-
ensure
|
25
|
-
Socket.do_not_reverse_lookup = orig
|
26
|
-
end
|
10
|
+
def stdout_logger
|
11
|
+
@@stdout_logger ||= Dumper::Utility::SlimLogger.new(STDOUT)
|
27
12
|
end
|
28
|
-
end
|
29
13
|
|
30
|
-
|
31
|
-
|
32
|
-
return
|
14
|
+
def log(msg, level=:info)
|
15
|
+
stdout_logger.send level, "** [Dumper] " + msg
|
16
|
+
return unless true #should_log?
|
17
|
+
logger.send level, msg
|
18
|
+
end
|
33
19
|
|
34
|
-
|
35
|
-
|
36
|
-
|
20
|
+
def log_last_error
|
21
|
+
log [ $!.class.name, $!.to_s ].join(', ')
|
22
|
+
log ("\n" << $!.backtrace.join("\n")), :debug
|
37
23
|
end
|
38
24
|
end
|
39
25
|
|
@@ -52,32 +38,5 @@ module Dumper
|
|
52
38
|
end
|
53
39
|
end
|
54
40
|
end
|
55
|
-
|
56
|
-
module LoggingMethods
|
57
|
-
def logger
|
58
|
-
@@logger ||= Dumper::Utility::SlimLogger.new("#{Rails.root}/log/dumper_agent.log", 1, 10.megabytes)
|
59
|
-
end
|
60
|
-
|
61
|
-
def stdout_logger
|
62
|
-
@@stdout_logger ||= Dumper::Utility::SlimLogger.new(STDOUT)
|
63
|
-
end
|
64
|
-
|
65
|
-
def log(msg, level=:info)
|
66
|
-
stdout_logger.send level, "** [Dumper] " + msg
|
67
|
-
return unless true #should_log?
|
68
|
-
logger.send level, msg
|
69
|
-
end
|
70
|
-
|
71
|
-
def log_last_error
|
72
|
-
log [ $!.class.name, $!.to_s ].join(', ')
|
73
|
-
log ("\n" << $!.backtrace.join("\n")), :debug
|
74
|
-
end
|
75
|
-
end
|
76
|
-
|
77
|
-
module ObjectFinder
|
78
|
-
def find_instance_in_object_space(klass)
|
79
|
-
ObjectSpace.each_object(klass).first
|
80
|
-
end
|
81
|
-
end
|
82
41
|
end
|
83
42
|
end
|
data/lib/dumper/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dumper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.7.
|
4
|
+
version: 1.7.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kenn Ejima
|
@@ -165,7 +165,9 @@ files:
|
|
165
165
|
- lib/dumper/job.rb
|
166
166
|
- lib/dumper/patch.rb
|
167
167
|
- lib/dumper/stack.rb
|
168
|
-
- lib/dumper/utility.rb
|
168
|
+
- lib/dumper/utility/ip.rb
|
169
|
+
- lib/dumper/utility/log.rb
|
170
|
+
- lib/dumper/utility/object_finder.rb
|
169
171
|
- lib/dumper/version.rb
|
170
172
|
- lib/generators/dumper/install_generator.rb
|
171
173
|
- lib/generators/dumper/templates/dumper.rb.erb
|