logstash-filter-empowclassifier 0.3.18 → 0.3.19

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bf5b905aefb124ab7b19acf66fc8353dc6184c18cff3283123757bea00a6c14b
4
- data.tar.gz: 6444d99e54834955caf25a39db38b7e09b2646044ea8c0380eff36e7f1912223
3
+ metadata.gz: 9d8c5a0a9811c55399f68e4576b616806abc888f782178850e4dcc3f961c0ff7
4
+ data.tar.gz: d7014ddfca0ba50073de7c86336d660543b3a90293a886c0d66273ac317dae8c
5
5
  SHA512:
6
- metadata.gz: e9104d6a2d640512b22841c1a69087a8daa7c11a4bda6cb79b15e85a2e9db5f3d24d9ec9d0c1d97f5214d041fb7839c5576e08c977b35eb3d90f7beefc480f04
7
- data.tar.gz: '081f993e370beb1e944aa369bba155912354490bcc0ab82b956a9026656ebdba9b34cc620fe23ff6060fc2ca589c26427f395363c6d3f616995b577cc2190627'
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
- if response['responseStatus'] == 'SUCCESS'
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
- @requests_queue.delete(request)
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.18'
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.18
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