logstash-filter-xml 1.0.0 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +4 -4
- data/lib/logstash/filters/xml.rb +14 -13
- data/logstash-filter-xml.gemspec +3 -3
- metadata +19 -27
- data/.gitignore +0 -4
- data/Rakefile +0 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0cc23a2b4fbf8f27be3a03d4eae0905419b417b6
|
4
|
+
data.tar.gz: 504c3d9c86cc194e81925cc5e449179cedc27fec
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6e88af0b7f4a9a291981f27798d5aff051f2ab71c3de2a627de46870036af14c23ae76bbd07c7a03ee897aadbd58a19164ead635164ebe93d45d4d432f20406a
|
7
|
+
data.tar.gz: 6dd211a00d4cb915e9fdf64cbed6c83118987e2d8c37dbdf9d7f5a52a0b50c949494850ab97e9c2b9d6db7d5a670d35e47ced236c8baf6dddcd78d045728641b
|
data/README.md
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
# Logstash Plugin
|
2
2
|
|
3
|
-
This is a plugin for [Logstash](https://github.com/
|
3
|
+
This is a plugin for [Logstash](https://github.com/elastic/logstash).
|
4
4
|
|
5
5
|
It is fully free and fully open source. The license is Apache 2.0, meaning you are pretty much free to use it however you want in whatever way.
|
6
6
|
|
7
7
|
## Documentation
|
8
8
|
|
9
|
-
Logstash provides infrastructure to automatically generate documentation for this plugin. We use the asciidoc format to write documentation so any comments in the source code will be first converted into asciidoc and then into html. All plugin documentation are placed under one [central location](http://www.
|
9
|
+
Logstash provides infrastructure to automatically generate documentation for this plugin. We use the asciidoc format to write documentation so any comments in the source code will be first converted into asciidoc and then into html. All plugin documentation are placed under one [central location](http://www.elastic.co/guide/en/logstash/current/).
|
10
10
|
|
11
11
|
- For formatting code or config example, you can use the asciidoc `[source,ruby]` directive
|
12
|
-
- For more asciidoc formatting tips, see the excellent reference here https://github.com/
|
12
|
+
- For more asciidoc formatting tips, see the excellent reference here https://github.com/elastic/docs#asciidoc-guide
|
13
13
|
|
14
14
|
## Need Help?
|
15
15
|
|
@@ -83,4 +83,4 @@ Programming is not a required skill. Whatever you've seen about open source and
|
|
83
83
|
|
84
84
|
It is more important to the community that you are able to contribute.
|
85
85
|
|
86
|
-
For more information about contributing, see the [CONTRIBUTING](https://github.com/
|
86
|
+
For more information about contributing, see the [CONTRIBUTING](https://github.com/elastic/logstash/blob/master/CONTRIBUTING.md) file.
|
data/lib/logstash/filters/xml.rb
CHANGED
@@ -12,7 +12,7 @@ class LogStash::Filters::Xml < LogStash::Filters::Base
|
|
12
12
|
# [source,ruby]
|
13
13
|
# source => source_field
|
14
14
|
#
|
15
|
-
# For example, if you have the whole
|
15
|
+
# For example, if you have the whole XML document in your `message` field:
|
16
16
|
# [source,ruby]
|
17
17
|
# filter {
|
18
18
|
# xml {
|
@@ -20,12 +20,12 @@ class LogStash::Filters::Xml < LogStash::Filters::Base
|
|
20
20
|
# }
|
21
21
|
# }
|
22
22
|
#
|
23
|
-
# The above would parse the
|
23
|
+
# The above would parse the XML from the `message` field.
|
24
24
|
config :source, :validate => :string, :required => true
|
25
25
|
|
26
26
|
# Define target for placing the data
|
27
27
|
#
|
28
|
-
#
|
28
|
+
# For example if you want the data to be put in the `doc` field:
|
29
29
|
# [source,ruby]
|
30
30
|
# filter {
|
31
31
|
# xml {
|
@@ -35,29 +35,30 @@ class LogStash::Filters::Xml < LogStash::Filters::Base
|
|
35
35
|
#
|
36
36
|
# XML in the value of the source field will be expanded into a
|
37
37
|
# datastructure in the `target` field.
|
38
|
-
# Note: if the `target` field already exists, it will be overridden
|
39
|
-
# Required
|
38
|
+
# Note: if the `target` field already exists, it will be overridden.
|
39
|
+
# Required if `store_xml` is true (which is the default).
|
40
40
|
config :target, :validate => :string
|
41
41
|
|
42
|
-
# xpath will additionally select string values (
|
43
|
-
#
|
44
|
-
#
|
42
|
+
# xpath will additionally select string values (non-strings will be
|
43
|
+
# converted to strings with Ruby's `to_s` function) from parsed XML
|
44
|
+
# (using each source field defined using the method above) and place
|
45
|
+
# those values in the destination fields. Configuration:
|
45
46
|
# [source,ruby]
|
46
47
|
# xpath => [ "xpath-syntax", "destination-field" ]
|
47
48
|
#
|
48
|
-
# Values returned by XPath
|
49
|
+
# Values returned by XPath parsing from `xpath-syntax` will be put in the
|
49
50
|
# destination field. Multiple values returned will be pushed onto the
|
50
51
|
# destination field as an array. As such, multiple matches across
|
51
|
-
# multiple source fields will produce duplicate entries in the field
|
52
|
+
# multiple source fields will produce duplicate entries in the field.
|
52
53
|
#
|
53
|
-
# More on
|
54
|
+
# More on XPath: http://www.w3schools.com/xpath/
|
54
55
|
#
|
55
|
-
# The
|
56
|
+
# The XPath functions are particularly powerful:
|
56
57
|
# http://www.w3schools.com/xpath/xpath_functions.asp
|
57
58
|
#
|
58
59
|
config :xpath, :validate => :hash, :default => {}
|
59
60
|
|
60
|
-
# By default the filter will store the whole parsed
|
61
|
+
# By default the filter will store the whole parsed XML in the destination
|
61
62
|
# field as described above. Setting this to false will prevent that.
|
62
63
|
config :store_xml, :validate => :boolean, :default => true
|
63
64
|
|
data/logstash-filter-xml.gemspec
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
|
3
3
|
s.name = 'logstash-filter-xml'
|
4
|
-
s.version = '
|
4
|
+
s.version = '2.0.0'
|
5
5
|
s.licenses = ['Apache License (2.0)']
|
6
6
|
s.summary = "Takes a field that contains XML and expands it into an actual datastructure."
|
7
7
|
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 gemname. This gem is not a stand-alone program"
|
@@ -11,7 +11,7 @@ Gem::Specification.new do |s|
|
|
11
11
|
s.require_paths = ["lib"]
|
12
12
|
|
13
13
|
# Files
|
14
|
-
s.files =
|
14
|
+
s.files = Dir['lib/**/*','spec/**/*','vendor/**/*','*.gemspec','*.md','CONTRIBUTORS','Gemfile','LICENSE','NOTICE.TXT']
|
15
15
|
|
16
16
|
# Tests
|
17
17
|
s.test_files = s.files.grep(%r{^(test|spec|features)/})
|
@@ -20,7 +20,7 @@ Gem::Specification.new do |s|
|
|
20
20
|
s.metadata = { "logstash_plugin" => "true", "logstash_group" => "filter" }
|
21
21
|
|
22
22
|
# Gem dependencies
|
23
|
-
s.add_runtime_dependency "logstash-core",
|
23
|
+
s.add_runtime_dependency "logstash-core", "~> 2.0.0.snapshot"
|
24
24
|
s.add_runtime_dependency 'nokogiri'
|
25
25
|
s.add_runtime_dependency 'xml-simple'
|
26
26
|
|
metadata
CHANGED
@@ -1,91 +1,83 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-filter-xml
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 2.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Elastic
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-09-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name: logstash-core
|
15
|
-
version_requirements: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - '>='
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: 1.4.0
|
20
|
-
- - <
|
21
|
-
- !ruby/object:Gem::Version
|
22
|
-
version: 2.0.0
|
23
14
|
requirement: !ruby/object:Gem::Requirement
|
24
15
|
requirements:
|
25
|
-
- -
|
16
|
+
- - ~>
|
26
17
|
- !ruby/object:Gem::Version
|
27
|
-
version:
|
28
|
-
|
29
|
-
- !ruby/object:Gem::Version
|
30
|
-
version: 2.0.0
|
18
|
+
version: 2.0.0.snapshot
|
19
|
+
name: logstash-core
|
31
20
|
prerelease: false
|
32
21
|
type: :runtime
|
33
|
-
- !ruby/object:Gem::Dependency
|
34
|
-
name: nokogiri
|
35
22
|
version_requirements: !ruby/object:Gem::Requirement
|
36
23
|
requirements:
|
37
|
-
- -
|
24
|
+
- - ~>
|
38
25
|
- !ruby/object:Gem::Version
|
39
|
-
version:
|
26
|
+
version: 2.0.0.snapshot
|
27
|
+
- !ruby/object:Gem::Dependency
|
40
28
|
requirement: !ruby/object:Gem::Requirement
|
41
29
|
requirements:
|
42
30
|
- - '>='
|
43
31
|
- !ruby/object:Gem::Version
|
44
32
|
version: '0'
|
33
|
+
name: nokogiri
|
45
34
|
prerelease: false
|
46
35
|
type: :runtime
|
47
|
-
- !ruby/object:Gem::Dependency
|
48
|
-
name: xml-simple
|
49
36
|
version_requirements: !ruby/object:Gem::Requirement
|
50
37
|
requirements:
|
51
38
|
- - '>='
|
52
39
|
- !ruby/object:Gem::Version
|
53
40
|
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
54
42
|
requirement: !ruby/object:Gem::Requirement
|
55
43
|
requirements:
|
56
44
|
- - '>='
|
57
45
|
- !ruby/object:Gem::Version
|
58
46
|
version: '0'
|
47
|
+
name: xml-simple
|
59
48
|
prerelease: false
|
60
49
|
type: :runtime
|
61
|
-
- !ruby/object:Gem::Dependency
|
62
|
-
name: logstash-devutils
|
63
50
|
version_requirements: !ruby/object:Gem::Requirement
|
64
51
|
requirements:
|
65
52
|
- - '>='
|
66
53
|
- !ruby/object:Gem::Version
|
67
54
|
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
68
56
|
requirement: !ruby/object:Gem::Requirement
|
69
57
|
requirements:
|
70
58
|
- - '>='
|
71
59
|
- !ruby/object:Gem::Version
|
72
60
|
version: '0'
|
61
|
+
name: logstash-devutils
|
73
62
|
prerelease: false
|
74
63
|
type: :development
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - '>='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
75
69
|
description: This gem is a logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/plugin install gemname. This gem is not a stand-alone program
|
76
70
|
email: info@elastic.co
|
77
71
|
executables: []
|
78
72
|
extensions: []
|
79
73
|
extra_rdoc_files: []
|
80
74
|
files:
|
81
|
-
- .gitignore
|
82
75
|
- CHANGELOG.md
|
83
76
|
- CONTRIBUTORS
|
84
77
|
- Gemfile
|
85
78
|
- LICENSE
|
86
79
|
- NOTICE.TXT
|
87
80
|
- README.md
|
88
|
-
- Rakefile
|
89
81
|
- lib/logstash/filters/xml.rb
|
90
82
|
- logstash-filter-xml.gemspec
|
91
83
|
- spec/filters/xml_spec.rb
|
@@ -111,7 +103,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
111
103
|
version: '0'
|
112
104
|
requirements: []
|
113
105
|
rubyforge_project:
|
114
|
-
rubygems_version: 2.
|
106
|
+
rubygems_version: 2.4.8
|
115
107
|
signing_key:
|
116
108
|
specification_version: 4
|
117
109
|
summary: Takes a field that contains XML and expands it into an actual datastructure.
|
data/.gitignore
DELETED