data_collector 0.15.0 → 0.17.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/data_collector/core.rb +7 -0
- data/lib/data_collector/input.rb +2 -2
- data/lib/data_collector/rules.rb +1 -1
- data/lib/data_collector/rules_ng.rb +2 -2
- data/lib/data_collector/version.rb +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: 351bb040c33b9010903681a117df29f02ba3663e440ed30b37520d5a8aa98b30
|
4
|
+
data.tar.gz: a307677b46ecce478fed2206cf5e9173b67bcec8a8b772ca1f12d71fd33a6fad
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6298f438cf8030be76ac85f9652aead672dedd42c6f5c6324b6004bae175442bb9565e31ec3aee430da601e3bcdc43eab08dbf19e9cfb89fe54f00ef61758325
|
7
|
+
data.tar.gz: 7b77100e03002764c58e4f2b0d3c962b445422fe7109aa14f0ac7f389628399392db0e172fe7141a35967a6f87c26cce2a8ee7865084454bb9e5587550085ae7
|
data/lib/data_collector/core.rb
CHANGED
@@ -16,6 +16,7 @@ module DataCollector
|
|
16
16
|
def input
|
17
17
|
@input ||= DataCollector::Input.new
|
18
18
|
end
|
19
|
+
module_function :input
|
19
20
|
|
20
21
|
# Output is an object you can store data that needs to be written to an output stream
|
21
22
|
# output[:name] = 'John'
|
@@ -48,6 +49,7 @@ module DataCollector
|
|
48
49
|
def output
|
49
50
|
@output ||= Output.new
|
50
51
|
end
|
52
|
+
module_function :output
|
51
53
|
|
52
54
|
#You can apply rules to input
|
53
55
|
# A rule is made up of a Hash the key is the map key field its value is a Hash with a JSONPath filter and
|
@@ -79,11 +81,13 @@ module DataCollector
|
|
79
81
|
def rules
|
80
82
|
@rules ||= Rules.new
|
81
83
|
end
|
84
|
+
module_function :rules
|
82
85
|
|
83
86
|
# New rules runner
|
84
87
|
def rules_ng
|
85
88
|
@rules_ng ||= RulesNg.new
|
86
89
|
end
|
90
|
+
module_function :rules_ng
|
87
91
|
|
88
92
|
# evaluator http://jsonpath.com/
|
89
93
|
# uitleg http://goessner.net/articles/JsonPath/index.html
|
@@ -104,15 +108,18 @@ module DataCollector
|
|
104
108
|
@logger.error("#{filter_path} failed: #{e.message}")
|
105
109
|
[]
|
106
110
|
end
|
111
|
+
module_function :filter
|
107
112
|
|
108
113
|
def config
|
109
114
|
@config ||= ConfigFile
|
110
115
|
end
|
116
|
+
module_function :config
|
111
117
|
|
112
118
|
def log(message)
|
113
119
|
@logger ||= Logger.new(STDOUT)
|
114
120
|
@logger.info(message)
|
115
121
|
end
|
122
|
+
module_function :log
|
116
123
|
|
117
124
|
end
|
118
125
|
|
data/lib/data_collector/input.rb
CHANGED
@@ -84,9 +84,9 @@ module DataCollector
|
|
84
84
|
ctx = OpenSSL::SSL::SSLContext.new
|
85
85
|
ctx.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
86
86
|
|
87
|
-
http_response = http.get(escape_uri(uri), ssl_context: ctx)
|
87
|
+
http_response = http.follow.get(escape_uri(uri), ssl_context: ctx)
|
88
88
|
else
|
89
|
-
http_response = http.get(escape_uri(uri))
|
89
|
+
http_response = http.follow.get(escape_uri(uri))
|
90
90
|
end
|
91
91
|
|
92
92
|
case http_response.code
|
data/lib/data_collector/rules.rb
CHANGED
@@ -105,12 +105,12 @@ module DataCollector
|
|
105
105
|
output_data
|
106
106
|
end
|
107
107
|
|
108
|
-
def json_path_filter(
|
108
|
+
def json_path_filter(filter, input_data)
|
109
109
|
data = nil
|
110
110
|
return data if input_data.nil? || input_data.empty?
|
111
111
|
return input_data if input_data.is_a?(String)
|
112
112
|
|
113
|
-
|
113
|
+
Core.filter(input_data, filter)
|
114
114
|
end
|
115
115
|
end
|
116
116
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: data_collector
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.17.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mehmet Celik
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-03-
|
11
|
+
date: 2023-03-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|