logstash-input-blueliv 0.1.1 → 0.1.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/README.md +23 -21
- data/lib/logstash/inputs/blueliv.rb +6 -1
- data/logstash-input-blueliv.gemspec +1 -1
- data/spec/inputs/blueliv_spec.rb +2 -1
- metadata +22 -22
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 301e9a57ed9e76018fa0feaacaae77f07db9d7d4
|
4
|
+
data.tar.gz: 2f8e5788e8186dd266ab739d4764007e992cfb98
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 53ee56a4f0e4b374cc3e31e63dbe28698a1c1884d688af20a56bceb96c68be0f7b6922534fee906b3d9f3e9719960a845c37a9effc0363433fe046c156529fb7
|
7
|
+
data.tar.gz: 101f000cb9e9a5cd1483ea5cf3a5b8912f19fccbc0dee4801415745dac05d91637e82c0bb868ca1082cf16e31839b087ddd1278f3671feaab992bf7054d2397a
|
data/README.md
CHANGED
@@ -28,16 +28,16 @@ This plugin has the following configuration parameters:
|
|
28
28
|
|
29
29
|
The default configuration for ``feeds`` field is the following:
|
30
30
|
```javascript
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
31
|
+
"crimeservers" => {
|
32
|
+
"active" => false,
|
33
|
+
"feed_type" => "test",
|
34
|
+
"interval" => 900,
|
35
|
+
},
|
36
|
+
"botips" => {
|
37
|
+
"active" => false,
|
38
|
+
"feed_type" => "test",
|
39
|
+
"interval" => 600
|
40
|
+
}
|
41
41
|
```
|
42
42
|
|
43
43
|
|
@@ -45,17 +45,19 @@ The default configuration for ``feeds`` field is the following:
|
|
45
45
|
|
46
46
|
```javascript
|
47
47
|
input {
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
48
|
+
blueliv {
|
49
|
+
api_key => "<YOUR API KEY>"
|
50
|
+
feeds => {
|
51
|
+
"botips" => {
|
52
|
+
"active" => true
|
53
|
+
"feed_type" => "non_pos"
|
54
|
+
}
|
55
|
+
"crimeservers" => {
|
56
|
+
"active" => true
|
57
|
+
"feed_type" => "all"
|
58
|
+
}
|
59
|
+
}
|
60
|
+
}
|
59
61
|
}
|
60
62
|
```
|
61
63
|
Be aware that if you do not specify a given field, the default value will be configured. In this case, we did not touch the ``interval`` field for the feeds, so the defaults will apply.
|
@@ -7,6 +7,10 @@ require "logstash/namespace"
|
|
7
7
|
require "rest-client"
|
8
8
|
require "securerandom"
|
9
9
|
|
10
|
+
|
11
|
+
USER_AGENT = "Logstash v0.1.2"
|
12
|
+
API_CLIENT = "6ee37a93-d064-464b-b4c1-c37e9656273f"
|
13
|
+
|
10
14
|
ONE_DAY_IN_SECONDS = 86400
|
11
15
|
|
12
16
|
RESOURCES = {
|
@@ -170,7 +174,8 @@ class LogStash::Inputs::Blueliv < LogStash::Inputs::Base
|
|
170
174
|
def get_feed(queue, name, url, &block)
|
171
175
|
loop do
|
172
176
|
begin
|
173
|
-
response = client.get
|
177
|
+
response = client.get("#{url}?key=#{API_CLIENT}", :Authorization => @auth, :timeout => @timeout,
|
178
|
+
:user_agent => USER_AGENT, :headers => {"X-API-CLIENT" => API_CLIENT})
|
174
179
|
response_json = JSON.parse(response.body)
|
175
180
|
items = response_json[RESOURCES[name.to_sym][:items]]
|
176
181
|
items.each do |it|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = "logstash-input-blueliv"
|
3
|
-
s.version = "0.1.
|
3
|
+
s.version = "0.1.2"
|
4
4
|
s.licenses = ["Apache License (2.0)"]
|
5
5
|
s.summary = "This plugin allows users to access Blueliv Crime Servers and Bot IPs feeds."
|
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/plugin install logstash-input-blueliv. This gem is not a stand-alone program"
|
data/spec/inputs/blueliv_spec.rb
CHANGED
@@ -72,7 +72,8 @@ describe LogStash::Inputs::Blueliv do
|
|
72
72
|
subject.auth = authorization
|
73
73
|
subject.timeout = timeout
|
74
74
|
|
75
|
-
allow(subject.client).to receive(:get).with(url, :Authorization => authorization,
|
75
|
+
allow(subject.client).to receive(:get).with("#{url}?key=#{API_CLIENT}", :Authorization => authorization,
|
76
|
+
:timeout => timeout, :user_agent => USER_AGENT, :headers => {"X-API-CLIENT" => API_CLIENT}).and_return(mock_response)
|
76
77
|
subject.get_feed logstash_queue, feed_name, url
|
77
78
|
expect(logstash_queue.size).to eq(1)
|
78
79
|
subject.teardown
|
metadata
CHANGED
@@ -1,17 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-input-blueliv
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Blueliv
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-07-
|
11
|
+
date: 2015-07-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
|
14
|
+
name: logstash-core
|
15
|
+
version_requirements: !ruby/object:Gem::Requirement
|
15
16
|
requirements:
|
16
17
|
- - '>='
|
17
18
|
- !ruby/object:Gem::Version
|
@@ -19,10 +20,7 @@ dependencies:
|
|
19
20
|
- - <
|
20
21
|
- !ruby/object:Gem::Version
|
21
22
|
version: 2.0.0
|
22
|
-
|
23
|
-
prerelease: false
|
24
|
-
type: :runtime
|
25
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirement: !ruby/object:Gem::Requirement
|
26
24
|
requirements:
|
27
25
|
- - '>='
|
28
26
|
- !ruby/object:Gem::Version
|
@@ -30,48 +28,50 @@ dependencies:
|
|
30
28
|
- - <
|
31
29
|
- !ruby/object:Gem::Version
|
32
30
|
version: 2.0.0
|
31
|
+
prerelease: false
|
32
|
+
type: :runtime
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
|
+
name: logstash-codec-plain
|
35
|
+
version_requirements: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - '>='
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '0'
|
34
40
|
requirement: !ruby/object:Gem::Requirement
|
35
41
|
requirements:
|
36
42
|
- - '>='
|
37
43
|
- !ruby/object:Gem::Version
|
38
44
|
version: '0'
|
39
|
-
name: logstash-codec-plain
|
40
45
|
prerelease: false
|
41
46
|
type: :runtime
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: rest-client
|
42
49
|
version_requirements: !ruby/object:Gem::Requirement
|
43
50
|
requirements:
|
44
|
-
- -
|
51
|
+
- - ~>
|
45
52
|
- !ruby/object:Gem::Version
|
46
|
-
version:
|
47
|
-
- !ruby/object:Gem::Dependency
|
53
|
+
version: 1.8.0
|
48
54
|
requirement: !ruby/object:Gem::Requirement
|
49
55
|
requirements:
|
50
56
|
- - ~>
|
51
57
|
- !ruby/object:Gem::Version
|
52
58
|
version: 1.8.0
|
53
|
-
name: rest-client
|
54
59
|
prerelease: false
|
55
60
|
type: :runtime
|
61
|
+
- !ruby/object:Gem::Dependency
|
62
|
+
name: logstash-devutils
|
56
63
|
version_requirements: !ruby/object:Gem::Requirement
|
57
64
|
requirements:
|
58
|
-
- -
|
65
|
+
- - '>='
|
59
66
|
- !ruby/object:Gem::Version
|
60
|
-
version:
|
61
|
-
- !ruby/object:Gem::Dependency
|
67
|
+
version: '0'
|
62
68
|
requirement: !ruby/object:Gem::Requirement
|
63
69
|
requirements:
|
64
70
|
- - '>='
|
65
71
|
- !ruby/object:Gem::Version
|
66
72
|
version: '0'
|
67
|
-
name: logstash-devutils
|
68
73
|
prerelease: false
|
69
74
|
type: :development
|
70
|
-
version_requirements: !ruby/object:Gem::Requirement
|
71
|
-
requirements:
|
72
|
-
- - '>='
|
73
|
-
- !ruby/object:Gem::Version
|
74
|
-
version: '0'
|
75
75
|
description: This gem is a logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/plugin install logstash-input-blueliv. This gem is not a stand-alone program
|
76
76
|
email: community@blueliv.com
|
77
77
|
executables: []
|
@@ -109,7 +109,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
109
109
|
version: '0'
|
110
110
|
requirements: []
|
111
111
|
rubyforge_project:
|
112
|
-
rubygems_version: 2.4.
|
112
|
+
rubygems_version: 2.4.6
|
113
113
|
signing_key:
|
114
114
|
specification_version: 4
|
115
115
|
summary: This plugin allows users to access Blueliv Crime Servers and Bot IPs feeds.
|