s3backup 0.6.6 → 0.6.7
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +5 -0
- data/README.rdoc +4 -1
- data/backup.yml +10 -3
- data/lib/s3backup.rb +1 -1
- data/lib/s3backup/backup.rb +8 -0
- data/lib/s3backup/s3log.rb +18 -3
- data/lib/s3backup/s3wrapper.rb +2 -3
- metadata +1 -1
data/History.txt
CHANGED
data/README.rdoc
CHANGED
@@ -16,15 +16,18 @@ To use remotebackup,you should prepare backup configuretion file by yaml such be
|
|
16
16
|
bucket: "bucket name"
|
17
17
|
directories:
|
18
18
|
- "absolute path to directory for backup/restore"
|
19
|
-
- "
|
19
|
+
- "iterate directory as you like"
|
20
20
|
access_key_id: 'Amazon access_key_id'
|
21
21
|
secret_access_key: 'Amazon secret_access_key'
|
22
22
|
password: 'password for aes. (optional)'
|
23
23
|
salt: 'HexString(16 length) (must when password is specified) '
|
24
|
+
buffer_size: 'number of byte max 50000000000 (optional default 32000000)'
|
25
|
+
max_retry_count: 'number of retry of post if post failed.(optional default 10)'
|
24
26
|
proxy_host: proxy host address if you use proxy.
|
25
27
|
proxy_port: proxy port if you use proxy.
|
26
28
|
proxy_user: login name for proxy server if you use proxy.
|
27
29
|
proxy_password: login password for proxy server if you use proxy.
|
30
|
+
log_level: 'output log level. value is debug or info or warn or error(optional default info)'
|
28
31
|
*If directories isn't specified when restore, it restores all directories in bucket.
|
29
32
|
|
30
33
|
== COMMAND:
|
data/backup.yml
CHANGED
@@ -1,8 +1,15 @@
|
|
1
|
-
bucket: "bucket name"
|
1
|
+
bucket: "bucket name. it is necessary uniq of the world wide"
|
2
2
|
directories:
|
3
3
|
- "absolute path to directory for backup/restore"
|
4
|
-
- "
|
4
|
+
- "iterate directory as you like"
|
5
5
|
access_key_id: 'Amazon access_key_id'
|
6
6
|
secret_access_key: 'Amazon secret_access_key'
|
7
|
-
password: 'password for aes. (optional)'
|
7
|
+
password: 'password encrypt files for aes. (optional)'
|
8
8
|
salt: 'HexString(16 length) (must when password is specified) '
|
9
|
+
buffer_size: 'number of byte max 50000000000 (optional default 32000000)'
|
10
|
+
max_retry_count: 'number of retry of post if post failed.(optional default 10)'
|
11
|
+
proxy_host: 'address of proxy server(optional)'
|
12
|
+
proxy_port: 'port of proxy server(optional)'
|
13
|
+
proxy_user: 'user name of proxy server(optional)'
|
14
|
+
proxy_password: 'password of proxy server(optional)'
|
15
|
+
log_level: 'output log level. value is debug or info or warn or error(optional default info)'
|
data/lib/s3backup.rb
CHANGED
data/lib/s3backup/backup.rb
CHANGED
@@ -16,6 +16,14 @@ module S3backup
|
|
16
16
|
@manager = Manager.new(@s3_obj,config)
|
17
17
|
end
|
18
18
|
def check_config(config)
|
19
|
+
if config["log_level"]
|
20
|
+
if config["log_level"] =~ /debug|info|warn|error/i
|
21
|
+
S3log.set_level(config["log_level"])
|
22
|
+
else
|
23
|
+
S3log.error("log_level:#{config['log_level']} is not debug or info or warn or error")
|
24
|
+
exit(-1)
|
25
|
+
end
|
26
|
+
end
|
19
27
|
unless config["directories"]
|
20
28
|
S3log.error("directories doesn't exist in config file.")
|
21
29
|
exit(-1)
|
data/lib/s3backup/s3log.rb
CHANGED
@@ -6,8 +6,25 @@ module S3backup
|
|
6
6
|
def S3log.get_logger
|
7
7
|
@@log_file ? @@log_file : Logger.new($stderr)
|
8
8
|
end
|
9
|
+
def S3log.set_level(level)
|
10
|
+
unless @@debug
|
11
|
+
case level
|
12
|
+
when /debug/i
|
13
|
+
get_logger.level = Logger::DEBUG
|
14
|
+
when /info/i
|
15
|
+
get_logger.level = Logger::INFO
|
16
|
+
when /warn/i
|
17
|
+
get_logger.level = Logger::WARN
|
18
|
+
when /error/i
|
19
|
+
get_logger.level = Logger::ERROR
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
9
23
|
def S3log.set_debug(flg)
|
10
24
|
@@debug=flg
|
25
|
+
if @@debug
|
26
|
+
get_logger.level = Logger::DEBUG
|
27
|
+
end
|
11
28
|
end
|
12
29
|
def S3log.error(str)
|
13
30
|
get_logger.error(str)
|
@@ -19,9 +36,7 @@ module S3backup
|
|
19
36
|
get_logger.warn(str)
|
20
37
|
end
|
21
38
|
def S3log.debug(str)
|
22
|
-
|
23
|
-
get_logger.debug(str)
|
24
|
-
end
|
39
|
+
get_logger.debug(str)
|
25
40
|
end
|
26
41
|
def S3log.set_logfile(f)
|
27
42
|
@@log_file = Logger.new(f)
|
data/lib/s3backup/s3wrapper.rb
CHANGED
@@ -3,7 +3,7 @@ require 'aws/s3'
|
|
3
3
|
module S3backup
|
4
4
|
class S3Wrapper
|
5
5
|
attr_reader :bucket
|
6
|
-
DEFAULT_MAX_RETRY_COUNT =
|
6
|
+
DEFAULT_MAX_RETRY_COUNT = 10
|
7
7
|
def initialize(config,create_flg)
|
8
8
|
@bucket= nil
|
9
9
|
@s3objects =nil
|
@@ -64,9 +64,8 @@ module S3backup
|
|
64
64
|
break;
|
65
65
|
rescue => ex
|
66
66
|
count+=1;
|
67
|
-
S3log.
|
67
|
+
S3log.info("post #{count} times failed. #{key_name}\n")
|
68
68
|
if count >= @max_retry_count
|
69
|
-
raise ex
|
70
69
|
S3log.error("post #{count} times failed #{key_name} #{ex.class}:#{ex.message}\n")
|
71
70
|
exit(-1)
|
72
71
|
end
|