logstash-output-thinkingdata 1.2.0 → 1.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +3 -0
- data/lib/logstash/outputs/thinkingdata.rb +18 -6
- data/logstash-output-thinkingdata.gemspec +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e867be173142072e9d2355704097e7440cbc159c2a1a7de39f8dc97e6d2e60df
|
4
|
+
data.tar.gz: 92bd1a49b9f661d64370b2ba2e1fdbb6005e98dfa66850feb649113582a1f687
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: eae1bf5a3dc7e72d02610ff020d3541df9a64a39504699f6dba1e4e61e0de429c45b7322693cd88f8f0b5016e254a8e0452fb6ab4454b5529ea8597fd6de3dd4
|
7
|
+
data.tar.gz: 73ed46b15a675a0d2b8ae7f1dbb897cb05147a7ac12a72552f944ffd366bc820b5c01ed75e5238056e9fff70bd9caec2deb728dab846e57b467070545d0698ce
|
data/CHANGELOG.md
CHANGED
@@ -41,7 +41,7 @@ class LogStash::Outputs::Thinkingdata < LogStash::Outputs::Base
|
|
41
41
|
# 是否检测appid
|
42
42
|
config :appid_check, :validate => :boolean, :default => false
|
43
43
|
|
44
|
-
PLUGIN_VERSION = "1.2.
|
44
|
+
PLUGIN_VERSION = "1.2.1"
|
45
45
|
|
46
46
|
public
|
47
47
|
|
@@ -82,7 +82,7 @@ class LogStash::Outputs::Thinkingdata < LogStash::Outputs::Base
|
|
82
82
|
|
83
83
|
# def register
|
84
84
|
|
85
|
-
|
85
|
+
# 验证appid
|
86
86
|
|
87
87
|
private
|
88
88
|
|
@@ -99,8 +99,13 @@ class LogStash::Outputs::Thinkingdata < LogStash::Outputs::Base
|
|
99
99
|
end
|
100
100
|
|
101
101
|
def send_content(content, event)
|
102
|
+
if content.to_s[0, 1] != '{'
|
103
|
+
@logger.error("data error: " + content.to_s)
|
104
|
+
@parse_error_count += 1
|
105
|
+
return
|
106
|
+
end
|
102
107
|
content['#uuid'] = SecureRandom.uuid if @uuid
|
103
|
-
if is_filebeat_input?(event) #filebeat input 记录
|
108
|
+
if is_filebeat_input?(event) # filebeat input 记录
|
104
109
|
host = event.get("[host][name]")
|
105
110
|
file = event.get("[log][file][path]")
|
106
111
|
file = event.get("[source]") if file.nil?
|
@@ -126,13 +131,15 @@ class LogStash::Outputs::Thinkingdata < LogStash::Outputs::Base
|
|
126
131
|
contents.each do |content|
|
127
132
|
begin
|
128
133
|
send_content(content, event)
|
134
|
+
rescue => e
|
135
|
+
@logger.error("Could not process content", :content => event.to_s, :Exception => e)
|
136
|
+
@parse_error_count += 1
|
129
137
|
end
|
130
138
|
end
|
131
139
|
else
|
132
140
|
content = JSON.parse(message)
|
133
141
|
send_content(content, event)
|
134
142
|
end
|
135
|
-
|
136
143
|
rescue => e
|
137
144
|
@logger.error("Could not process content", :content => event.to_s, :Exception => e)
|
138
145
|
@parse_error_count += 1
|
@@ -178,7 +185,7 @@ class LogStash::Outputs::Thinkingdata < LogStash::Outputs::Base
|
|
178
185
|
'TA-Integration-Version' => PLUGIN_VERSION, 'TA-Integration-Count' => events.length.to_s }
|
179
186
|
end
|
180
187
|
|
181
|
-
until do_send(data, headers)
|
188
|
+
until do_send(data, events, headers)
|
182
189
|
sleep 5
|
183
190
|
end
|
184
191
|
@total_send_count += events.length
|
@@ -186,12 +193,17 @@ class LogStash::Outputs::Thinkingdata < LogStash::Outputs::Base
|
|
186
193
|
|
187
194
|
private
|
188
195
|
|
189
|
-
def do_send(data, headers)
|
196
|
+
def do_send(data, events, headers)
|
190
197
|
begin
|
191
198
|
response = @client.post(@url, :body => data, :headers => headers).call
|
192
199
|
if response.code != 200
|
193
200
|
@logger.error("Send failed, code: #{response.code}, body: #{response.body}", :url => @url)
|
194
201
|
return false
|
202
|
+
else
|
203
|
+
response_body = JSON.parse(response.body)
|
204
|
+
if response_body["code"] != 0
|
205
|
+
@logger.error("Send failed, code: #{response.code}, body: #{response.body}, request data: #{events.to_s}", :url => @url)
|
206
|
+
end
|
195
207
|
end
|
196
208
|
rescue => e
|
197
209
|
@logger.error("Send failed", :url => @url, :exception => e.class.name, :backtrace => e.backtrace)
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'logstash-output-thinkingdata'
|
3
|
-
s.version = '1.2.
|
3
|
+
s.version = '1.2.1'
|
4
4
|
s.licenses = ['Apache-2.0']
|
5
5
|
s.summary = 'Output plugin for Thinkingdata Analytics'
|
6
6
|
s.description = 'This gem is a logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/logstash-plugin install gemname. This gem is not a stand-alone program.'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-output-thinkingdata
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- sdk
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-07-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: logstash-core-plugin-api
|