fluent-plugin-xml 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/fluent-plugin-xml.gemspec +2 -1
- data/lib/fluent/plugin/parser_xml.rb +9 -8
- metadata +17 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8ecbfd76d423425d760e7b55c85f7d936e27cf36f4a26f98091acce73feb6c90
|
4
|
+
data.tar.gz: 7e803f22c9fa16c344794d35b7582d373478981de06d0d0efa567cbc52c1d74f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2f8d378975bb7e9bf0a7b1da061fbbd915818f8c77cda3c024c217a5fa4c75266e73c721cfe1061b6cb12d05103ae34a3e2f6687846c07f9b6f02a7d7891ca2b
|
7
|
+
data.tar.gz: 8888467ff839cabb3ea3307d8658bcf2b53643382b9d81c1853a4ce513c8d52fd75975be0ee1603857285a4fe08f22908f8cfe3a4059764ee12d935564c45850
|
data/fluent-plugin-xml.gemspec
CHANGED
@@ -3,7 +3,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
3
3
|
|
4
4
|
Gem::Specification.new do |spec|
|
5
5
|
spec.name = "fluent-plugin-xml"
|
6
|
-
spec.version = "0.1.
|
6
|
+
spec.version = "0.1.2"
|
7
7
|
spec.authors = ["Rémy DUTHU"]
|
8
8
|
spec.email = ["remyduthu@icloud.com"]
|
9
9
|
|
@@ -23,4 +23,5 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.add_development_dependency "rake", "~> 12.0"
|
24
24
|
spec.add_development_dependency "test-unit", "~> 3.0"
|
25
25
|
spec.add_runtime_dependency "fluentd", [">= 0.14.10", "< 2"]
|
26
|
+
spec.add_runtime_dependency "nokogiri", [">= 1.12.5"]
|
26
27
|
end
|
@@ -14,7 +14,7 @@
|
|
14
14
|
# limitations under the License.
|
15
15
|
|
16
16
|
require 'fluent/plugin/parser'
|
17
|
-
require '
|
17
|
+
require 'nokogiri'
|
18
18
|
|
19
19
|
module Fluent
|
20
20
|
module Plugin
|
@@ -36,7 +36,7 @@ module Fluent
|
|
36
36
|
def parse(text)
|
37
37
|
begin
|
38
38
|
# Open the XML document
|
39
|
-
doc =
|
39
|
+
doc = Nokogiri.XML(text)
|
40
40
|
|
41
41
|
# Create an empty record which assigns default values for missing
|
42
42
|
# keys. See: https://stackoverflow.com/a/3339168.
|
@@ -88,13 +88,14 @@ module Fluent
|
|
88
88
|
end
|
89
89
|
|
90
90
|
def get_field_value(doc, xpath)
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
attribute = element.attributes[xpath[1]]
|
95
|
-
return if attribute.nil?
|
91
|
+
begin
|
92
|
+
elements = doc.xpath(xpath[0])
|
93
|
+
throw if elements.nil?
|
96
94
|
|
97
|
-
|
95
|
+
return elements.first[xpath[1]]
|
96
|
+
rescue StandardError
|
97
|
+
return
|
98
|
+
end
|
98
99
|
end
|
99
100
|
|
100
101
|
def deep_each_pair(hash, parents = [])
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent-plugin-xml
|
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
|
- Rémy DUTHU
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-11-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -72,6 +72,20 @@ dependencies:
|
|
72
72
|
- - "<"
|
73
73
|
- !ruby/object:Gem::Version
|
74
74
|
version: '2'
|
75
|
+
- !ruby/object:Gem::Dependency
|
76
|
+
name: nokogiri
|
77
|
+
requirement: !ruby/object:Gem::Requirement
|
78
|
+
requirements:
|
79
|
+
- - ">="
|
80
|
+
- !ruby/object:Gem::Version
|
81
|
+
version: 1.12.5
|
82
|
+
type: :runtime
|
83
|
+
prerelease: false
|
84
|
+
version_requirements: !ruby/object:Gem::Requirement
|
85
|
+
requirements:
|
86
|
+
- - ">="
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: 1.12.5
|
75
89
|
description:
|
76
90
|
email:
|
77
91
|
- remyduthu@icloud.com
|
@@ -106,7 +120,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
106
120
|
- !ruby/object:Gem::Version
|
107
121
|
version: '0'
|
108
122
|
requirements: []
|
109
|
-
rubygems_version: 3.0.3
|
123
|
+
rubygems_version: 3.0.3.1
|
110
124
|
signing_key:
|
111
125
|
specification_version: 4
|
112
126
|
summary: A Fluentd parser plugin to extract attributes from XML data
|