aliyun_sls_sdk 0.0.1 → 0.0.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/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
|