logstash-filter-empowclassifier 0.3.18 → 0.3.19
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9d8c5a0a9811c55399f68e4576b616806abc888f782178850e4dcc3f961c0ff7
|
4
|
+
data.tar.gz: d7014ddfca0ba50073de7c86336d660543b3a90293a886c0d66273ac317dae8c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 69e9291c7a229244108c39a8cb8d6ae82f68180e9fb5b6a9fc9615c3adee44a4bb123c5bb475df2d7483fba7ef1ef34970b72f314482e1c10b76045a191b74e7
|
7
|
+
data.tar.gz: ce48de1456ad02ea41728bb7d74f176a5575f61facf5633572f739282dd4ab3aca98f783a3497a79f330c02042d6178a9240ac7009290319e4299168c2d47ebb
|
@@ -185,17 +185,21 @@ module LogStash
|
|
185
185
|
results = Hash.new
|
186
186
|
|
187
187
|
responses.each_with_index do |response, i|
|
188
|
+
req = requests[i]
|
188
189
|
res = nil
|
189
190
|
|
190
|
-
|
191
|
+
status = response['responseStatus']
|
192
|
+
|
193
|
+
case status
|
194
|
+
when 'SUCCESS'
|
191
195
|
res = LogStash::Filters::Empow::SuccessfulResponse.new(response)
|
196
|
+
when 'IN_PROGRESS'
|
197
|
+
res = LogStash::Filters::Empow::InProgressResponse.new(response)
|
192
198
|
else
|
193
199
|
failure_reason = response['failedReason']
|
194
200
|
res = LogStash::Filters::Empow::FailureResponse.new(failure_reason)
|
195
201
|
end
|
196
202
|
|
197
|
-
req = requests[i]
|
198
|
-
|
199
203
|
results[req] = res
|
200
204
|
end
|
201
205
|
|
@@ -308,7 +308,9 @@ module LogStash; module Filters; module Empow;
|
|
308
308
|
@logger.error("encountered an error while trying to process result", :request => request, :error => e, :backtrace => e.backtrace)
|
309
309
|
end
|
310
310
|
|
311
|
-
|
311
|
+
if res.is_final # in case of anti-malware, the result may change till the classification process is done
|
312
|
+
@requests_queue.delete(request)
|
313
|
+
end
|
312
314
|
end
|
313
315
|
end
|
314
316
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'logstash-filter-empowclassifier'
|
3
|
-
s.version = '0.3.
|
3
|
+
s.version = '0.3.19'
|
4
4
|
s.licenses = ['Apache-2.0']
|
5
5
|
s.summary = 'Logstash intent classification plugin client for accessing empow''s classifiction cloud'
|
6
6
|
#s.description = 'Write a longer description or delete this line.'
|
@@ -0,0 +1,39 @@
|
|
1
|
+
require_relative '../spec_helper'
|
2
|
+
require "logstash/filters/center-client"
|
3
|
+
require "logstash/filters/response"
|
4
|
+
require "logstash/filters/classification-request"
|
5
|
+
|
6
|
+
# client = LogStash::Filters::Empow::ClassificationCenterClient.new('assaf', , , )
|
7
|
+
|
8
|
+
describe LogStash::Filters::Empow::ClassificationCenterClient do
|
9
|
+
|
10
|
+
# before(:each) do
|
11
|
+
# local_classifier = instance_double(LogStash::Filters::Empow::LocalClassifier)
|
12
|
+
# allow(LogStash::Filters::Empow::LocalClassifier).to receive(:new).and_return(local_classifier)
|
13
|
+
# end
|
14
|
+
|
15
|
+
let(:url_base) { 'https://s0apxz9wik.execute-api.us-east-2.amazonaws.com' }
|
16
|
+
let(:username) { 'assaf' }
|
17
|
+
let(:password) { 'Empow2018!' }
|
18
|
+
let(:pool_id) { '8dljcvt4jfif762le0ald6j' }
|
19
|
+
|
20
|
+
describe "classification center api" do
|
21
|
+
it "test missing ids request" do
|
22
|
+
client = described_class.new(username, password, pool_id, url_base)
|
23
|
+
|
24
|
+
client.authenticate
|
25
|
+
|
26
|
+
term = {}
|
27
|
+
term[:malware_name] = 'assaf.clicker'
|
28
|
+
req1 = LogStash::Filters::Empow::ClassificationRequest.new('AM', 'lastline', term)
|
29
|
+
|
30
|
+
results = client.classify([req1])
|
31
|
+
|
32
|
+
#p results
|
33
|
+
|
34
|
+
results.each do |res|
|
35
|
+
p "res: #{res}"
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-filter-empowclassifier
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.19
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- empow
|
@@ -206,6 +206,7 @@ files:
|
|
206
206
|
- lib/logstash/filters/response.rb
|
207
207
|
- lib/logstash/filters/utils.rb
|
208
208
|
- logstash-filter-empowclassifier.gemspec
|
209
|
+
- spec/filters/assaf_spec.rb
|
209
210
|
- spec/filters/bulk-processor_spec.rb
|
210
211
|
- spec/filters/center-client_spec.rb
|
211
212
|
- spec/filters/classifier-cache_spec.rb
|
@@ -246,6 +247,7 @@ specification_version: 4
|
|
246
247
|
summary: Logstash intent classification plugin client for accessing empows classifiction
|
247
248
|
cloud
|
248
249
|
test_files:
|
250
|
+
- spec/filters/assaf_spec.rb
|
249
251
|
- spec/filters/bulk-processor_spec.rb
|
250
252
|
- spec/filters/center-client_spec.rb
|
251
253
|
- spec/filters/classifier-cache_spec.rb
|