aliyun_sls_sdk 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/aliyun_sls_sdk.gemspec +0 -1
- data/lib/aliyun_sls_sdk/connection.rb +0 -1
- data/lib/aliyun_sls_sdk/version.rb +1 -1
- data/lib/{aliyun_sls.rb → aliyun_sls_sdk.rb} +0 -0
- metadata +3 -5
- data/bin/sls +0 -85
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 06026a99ab9e00ffead4a3f9a327cdc81fb42cfb
|
4
|
+
data.tar.gz: 204c854483de06e96a8a928a8ecb1b3aeb35f2fb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ffa653d8be8e2d42ac3708842cc4668e7e21d9d1ff4402c43f7b034b3d8433ffbe6227e3ed5bded20c8b3eec54f9574d4e3b0e36ad7088a058e1cd3d60b58b11
|
7
|
+
data.tar.gz: badb32a9c472c5f7880d42fbcbc18ff0eabca0671dec3787abb35006570bd3be8c56e40abbe7688aeec53c4f5b0da3faa4910add2fa4356daac8290efe21574a
|
data/aliyun_sls_sdk.gemspec
CHANGED
@@ -14,7 +14,6 @@ Gem::Specification.new do |spec|
|
|
14
14
|
spec.license = "MIT"
|
15
15
|
|
16
16
|
spec.files = `git ls-files`.split($/)
|
17
|
-
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
17
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
18
|
spec.require_paths = ["lib"]
|
20
19
|
|
File without changes
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aliyun_sls_sdk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- linhua.tlh
|
@@ -111,8 +111,7 @@ dependencies:
|
|
111
111
|
description: Gem for SDK of SLS of Aliyun
|
112
112
|
email:
|
113
113
|
- tlh1987@gmail.com
|
114
|
-
executables:
|
115
|
-
- sls
|
114
|
+
executables: []
|
116
115
|
extensions: []
|
117
116
|
extra_rdoc_files: []
|
118
117
|
files:
|
@@ -121,8 +120,7 @@ files:
|
|
121
120
|
- LICENSE.txt
|
122
121
|
- README.md
|
123
122
|
- aliyun_sls_sdk.gemspec
|
124
|
-
-
|
125
|
-
- lib/aliyun_sls.rb
|
123
|
+
- lib/aliyun_sls_sdk.rb
|
126
124
|
- lib/aliyun_sls_sdk/connection.rb
|
127
125
|
- lib/aliyun_sls_sdk/protobuf.rb
|
128
126
|
- lib/aliyun_sls_sdk/version.rb
|
data/bin/sls
DELETED
@@ -1,85 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
require File.join(File.dirname(__FILE__), '..', 'lib', 'aliyun_sls.rb')
|
3
|
-
require "file-tail"
|
4
|
-
require "byebug"
|
5
|
-
puts "sls [opt] ..." if (ARGV.size < 1)
|
6
|
-
|
7
|
-
def setup
|
8
|
-
h = {}
|
9
|
-
h['project'] = ENV["PROJECT"]
|
10
|
-
h['region'] = ENV["REGION"] || (puts "PROJECT=[PROJECT] REGION=[REGION] SECRET=[SECRET] KEY=[KEY] sls setup";exit)
|
11
|
-
h['access_key_secret'] = ENV["SECRET"] || (puts "PROJECT=[PROJECT] REGION=[REGION] SECRET=[SECRET] KEY=[KEY] sls setup";exit)
|
12
|
-
h['aliyun_access_key'] = ENV["KEY"] || (puts "PROJECT=[PROJECT] REGION=[REGION] SECRET=[SECRET] KEY=[KEY] sls setup";exit)
|
13
|
-
File.open(File.join(Dir.home, '.slsrc'), 'w+'){|f|
|
14
|
-
f << YAML.dump(h)
|
15
|
-
}
|
16
|
-
puts "setup config at ~/.slsrc"
|
17
|
-
end
|
18
|
-
|
19
|
-
def load
|
20
|
-
File.open(File.join(Dir.home, '.slsrc')){|f|
|
21
|
-
$config = YAML.load(f)
|
22
|
-
}
|
23
|
-
end
|
24
|
-
|
25
|
-
def regist_exit
|
26
|
-
puts "Press CTRL-C to quit"
|
27
|
-
Signal.trap(:INT){
|
28
|
-
exit(-1)
|
29
|
-
}
|
30
|
-
end
|
31
|
-
|
32
|
-
def put_logs(path, store, topic)
|
33
|
-
regist_exit
|
34
|
-
(puts "[PROJECT=[PROJECT]] sls put log_path store [topic]";exit(-1)) if !path || !store
|
35
|
-
load
|
36
|
-
(puts "load config failed! run: sls setup first.";exit(-1)) if !$config
|
37
|
-
|
38
|
-
# 如果传递了项目名称
|
39
|
-
# 则使用本次调用传递过来的值
|
40
|
-
# 否则使用配置文件中的值
|
41
|
-
con = AliyunSls::Connection.new(ENV['PROJECT'] || $config['project'], $config['region'], $config['access_key_secret'], $config['aliyun_access_key'])
|
42
|
-
|
43
|
-
File.open(path) do |log|
|
44
|
-
log.extend(File::Tail)
|
45
|
-
log.interval = 3
|
46
|
-
log.backward(0)
|
47
|
-
log.tail { |line|
|
48
|
-
puts line
|
49
|
-
put_line(line, con, store, topic)
|
50
|
-
}
|
51
|
-
end
|
52
|
-
end
|
53
|
-
|
54
|
-
def put_line(line, con, store, topic)
|
55
|
-
log = AliyunSls::Protobuf::Log.new(:time => Time.now.to_i, :contents => [])
|
56
|
-
begin
|
57
|
-
uri = URI.parse(line)
|
58
|
-
uri.query and uri.query.split('&').each{|paire|
|
59
|
-
k, v = paire.split('=')
|
60
|
-
log_item = AliyunSls::Protobuf::Log::Content.new(:key => k, :value => v)
|
61
|
-
log.contents << log_item
|
62
|
-
}
|
63
|
-
log_list = AliyunSls::Protobuf::LogGroup.new(:logs => [])
|
64
|
-
log_list.logs << log
|
65
|
-
log_list.topic = topic
|
66
|
-
log_list.source = uri.host
|
67
|
-
rescue URI::InvalidURIError => e
|
68
|
-
puts e
|
69
|
-
return
|
70
|
-
end
|
71
|
-
|
72
|
-
begin
|
73
|
-
rsp = con.puts_logs(store, log_list)
|
74
|
-
rescue Exception => e
|
75
|
-
puts "Exception with rsp #{e}"
|
76
|
-
end
|
77
|
-
end
|
78
|
-
|
79
|
-
case opt = ARGV[0]
|
80
|
-
when /setup/i
|
81
|
-
setup
|
82
|
-
exit(0)
|
83
|
-
when /put/i
|
84
|
-
put_logs(ARGV[1], ARGV[2], ARGV[3] || 'aliyun_sls_topic')
|
85
|
-
end
|