logstash-patterns-core 4.0.1 → 4.0.2

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
  SHA1:
3
- metadata.gz: 5102b0e018cdfa2809b8e626e4e2de508f83c3e8
4
- data.tar.gz: 6cca534e70e8ebc02767f332ca053a8ec34ca3cd
3
+ metadata.gz: 6121e0138e8de43548944cc443bdf0ee2a6b3847
4
+ data.tar.gz: c1c8ae3d54e66de0b2a103cbdca29e6a186f8456
5
5
  SHA512:
6
- metadata.gz: 1dcf6d243f752f3712eb083c110a34aae136c349fb4ffe9e38cdfd84a320826e746c546dc3a1f1f0544dd829e72ea72a134c132cc32d14ad8a9a1cc1c25c6077
7
- data.tar.gz: d171be7d6448be5b4eb3f491454f34823dcffa3f250d0b89be940fd76366c660b1e23fd1e4118a61d21e6fa185940726c5ba7bfe8ba097445ab09a984df740cf
6
+ metadata.gz: 14e64a42d2b8e7c31fe076b83ebaef5ddac0b77a6c69e7c28511aafce48d2d4c3d058d9354f60df96033474c4bf70755fb67c6ed96c6ea46e4113e48915e6971
7
+ data.tar.gz: 3805625550fcf3bd35304bdbfcb8bb666f07debfdd9c4cb3b74332992313df4cc612baef06959ba9c10d045fcb1d2014ca8fc6b0b3c342731ba680be9f444a72
@@ -1,3 +1,6 @@
1
+ ## 4.0.2
2
+ - Relax constraint on logstash-core-plugin-api to >= 1.60 <= 2.99
3
+
1
4
  ## 4.0.1
2
5
  - Republish all the gems under jruby.
3
6
  ## 4.0.0
@@ -26,6 +26,7 @@ Contributors:
26
26
  * Jelle Smet (smetj)
27
27
  * Jeremiah Shirk (jeremiahshirk)
28
28
  * Jordan Sissel (jordansissel)
29
+ * Jose Armesto (fiunchinho)
29
30
  * Joseph Price (PriceChild)
30
31
  * Kevin Nuckolls (knuckolls)
31
32
  * Kurt Hurtado (kurtado)
@@ -1,7 +1,7 @@
1
1
  Gem::Specification.new do |s|
2
2
 
3
3
  s.name = 'logstash-patterns-core'
4
- s.version = '4.0.1'
4
+ s.version = '4.0.2'
5
5
  s.licenses = ['Apache License (2.0)']
6
6
  s.summary = "Patterns to be used in logstash"
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/logstash-plugin install gemname. This gem is not a stand-alone program"
@@ -20,7 +20,7 @@ Gem::Specification.new do |s|
20
20
  s.metadata = { "logstash_plugin" => "true" }
21
21
 
22
22
  # Gem dependencies
23
- s.add_runtime_dependency "logstash-core-plugin-api", "~> 2.0"
23
+ s.add_runtime_dependency "logstash-core-plugin-api", ">= 1.60", "<= 2.99"
24
24
 
25
25
  s.add_development_dependency "logstash-devutils"
26
26
  s.add_development_dependency "logstash-filter-grok"
@@ -18,6 +18,8 @@ DATA .*?
18
18
  GREEDYDATA .*
19
19
  QUOTEDSTRING (?>(?<!\\)(?>"(?>\\.|[^\\"]+)+"|""|(?>'(?>\\.|[^\\']+)+')|''|(?>`(?>\\.|[^\\`]+)+`)|``))
20
20
  UUID [A-Fa-f0-9]{8}-(?:[A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}
21
+ # URN, allowing use of RFC 2141 section 2.3 reserved characters
22
+ URN urn:[0-9A-Za-z][0-9A-Za-z-]{0,31}:(?:%[0-9a-fA-F]{2}|[0-9A-Za-z()+,.:=@;$_!*'/?#-])+
21
23
 
22
24
  # Networking
23
25
  MAC (?:%{CISCOMAC}|%{WINDOWSMAC}|%{COMMONMAC})
@@ -33,7 +35,7 @@ HOSTPORT %{IPORHOST}:%{POSINT}
33
35
 
34
36
  # paths
35
37
  PATH (?:%{UNIXPATH}|%{WINPATH})
36
- UNIXPATH (/([\w_%!$@:.,~-]+|\\.)*)+
38
+ UNIXPATH (/([\w_%!$@:.,+~-]+|\\.)*)+
37
39
  TTY (?:/dev/(pts|tty([pq])?)(\w+)?/?(?:[0-9]+))
38
40
  WINPATH (?>[A-Za-z]+:|\\)(?:\\[^\\?*]*)+
39
41
  URIPROTO [A-Za-z]+(\+[A-Za-z+]+)?
@@ -47,7 +49,7 @@ URIPATHPARAM %{URIPATH}(?:%{URIPARAM})?
47
49
  URI %{URIPROTO}://(?:%{USER}(?::[^@]*)?@)?(?:%{URIHOST})?(?:%{URIPATHPARAM})?
48
50
 
49
51
  # Months: January, Feb, 3, 03, 12, December
50
- MONTH \b(?:Jan(?:uary|uar)?|Feb(?:ruary|ruar)?|M(?:a|ä)?r(?:ch|z)?|Apr(?:il)?|Ma(?:y|i)?|Jun(?:e|i)?|Jul(?:y)?|Aug(?:ust)?|Sep(?:tember)?|O(?:c|k)?t(?:ober)?|Nov(?:ember)?|De(?:c|z)(?:ember)?)\b
52
+ MONTH \b(?:[Jj]an(?:uary|uar)?|[Ff]eb(?:ruary|ruar)?|[Mm](?:a|ä)?r(?:ch|z)?|[Aa]pr(?:il)?|[Mm]a(?:y|i)?|[Jj]un(?:e|i)?|[Jj]ul(?:y)?|[Aa]ug(?:ust)?|[Ss]ep(?:tember)?|[Oo](?:c|k)?t(?:ober)?|[Nn]ov(?:ember)?|[Dd]e(?:c|z)(?:ember)?)\b
51
53
  MONTHNUM (?:0?[1-9]|1[0-2])
52
54
  MONTHNUM2 (?:0[1-9]|1[0-2])
53
55
  MONTHDAY (?:(?:0[1-9])|(?:[12][0-9])|(?:3[01])|[1-9])
@@ -70,7 +72,7 @@ ISO8601_SECOND (?:%{SECOND}|60)
70
72
  TIMESTAMP_ISO8601 %{YEAR}-%{MONTHNUM}-%{MONTHDAY}[T ]%{HOUR}:?%{MINUTE}(?::?%{SECOND})?%{ISO8601_TIMEZONE}?
71
73
  DATE %{DATE_US}|%{DATE_EU}
72
74
  DATESTAMP %{DATE}[- ]%{TIME}
73
- TZ (?:[PMCE][SD]T|UTC)
75
+ TZ (?:[APMCE][SD]T|UTC)
74
76
  DATESTAMP_RFC822 %{DAY} %{MONTH} %{MONTHDAY} %{YEAR} %{TIME} %{TZ}
75
77
  DATESTAMP_RFC2822 %{DAY}, %{MONTHDAY} %{MONTH} %{YEAR} %{TIME} %{ISO8601_TIMEZONE}
76
78
  DATESTAMP_OTHER %{DAY} %{MONTH} %{MONTHDAY} %{TIME} %{TZ} %{YEAR}
@@ -1,8 +1,8 @@
1
1
  JAVACLASS (?:[a-zA-Z$_][a-zA-Z$_0-9]*\.)*[a-zA-Z$_][a-zA-Z$_0-9]*
2
2
  #Space is an allowed character to match special cases like 'Native Method' or 'Unknown Source'
3
3
  JAVAFILE (?:[A-Za-z0-9_. -]+)
4
- #Allow special <init> method
5
- JAVAMETHOD (?:(<init>)|[a-zA-Z$_][a-zA-Z$_0-9]*)
4
+ #Allow special <init>, <clinit> methods
5
+ JAVAMETHOD (?:(<(?:cl)?init>)|[a-zA-Z$_][a-zA-Z$_0-9]*)
6
6
  #Line number is optional in special cases 'Native method' or 'Unknown source'
7
7
  JAVASTACKTRACEPART %{SPACE}at %{JAVACLASS:class}\.%{JAVAMETHOD:method}\(%{JAVAFILE:file}(?::%{NUMBER:line})?\)
8
8
  # Java Logs
@@ -193,5 +193,92 @@ describe "IPV4" do
193
193
  expect(grok_match(pattern,value)).not_to pass
194
194
  end
195
195
  end
196
+ end
197
+
198
+ describe "URN" do
199
+
200
+ let(:pattern) { "URN" }
201
+
202
+ # Valid URNs
203
+ # http://tools.ietf.org/html/rfc2141#section-2
204
+ let(:simple) { "urn:example:foo" }
205
+ let(:unreserved) { "urn:example:" +
206
+ [*'A'..'Z', *'a'..'z', *'0'..'9', "()+,-.::=@;$_!*'"].join() }
207
+ let(:reserved) { "urn:example:/#?" }
208
+ let(:escaped_upper) { "urn:example:%25foo%2Fbar%3F%23" }
209
+ let(:escaped_lower) { "urn:example:%25foo%2fbar%3f%23" }
210
+ let(:only_escaped) { "urn:example:%00" }
211
+ let(:long_nid) { "urn:example-example-example-example-:foo" }
212
+
213
+ # Invalid URNs
214
+ let(:bad_prefix) { "URN:example:foo" }
215
+ let(:empty_nid) { "urn::foo" }
216
+ let(:leading_hyphen) { "urn:-example:foo" }
217
+ let(:bad_nid) { "urn:example.com:foo" }
218
+ let(:percent_nid) { "urn:example%41com:foo" }
219
+ let(:too_long_nid) { "urn:example-example-example-example-x:foo" }
220
+ let(:empty_nss) { "urn:example:" }
221
+ let(:naked_percent) { "urn:example:%" }
222
+ let(:short_percent) { "urn:example:%a" }
223
+ let(:nonhex_percent) { "urn:example:%ax" }
224
+
225
+ context "when testing a valid URN" do
226
+ it "should match a simple URN" do
227
+ expect(grok_match(pattern, simple)).to pass
228
+ end
229
+
230
+ it "should match a complex URN" do
231
+ expect(grok_match(pattern, unreserved)).to pass
232
+ end
233
+
234
+ it "should allow reserved characters" do
235
+ expect(grok_match(pattern, reserved)).to pass
236
+ end
237
+
238
+ it "should allow percent-escapes" do
239
+ expect(grok_match(pattern, escaped_upper)).to pass
240
+ expect(grok_match(pattern, escaped_lower)).to pass
241
+ expect(grok_match(pattern, only_escaped)).to pass
242
+ end
243
+
244
+ it "should match a URN with a 32-character NID" do
245
+ expect(grok_match(pattern, long_nid)).to pass
246
+ end
247
+ end
248
+
249
+ context "when testing an invalid URN" do
250
+ it "should reject capitalized 'URN'" do
251
+ expect(grok_match(pattern, bad_prefix)).not_to pass
252
+ end
196
253
 
254
+ it "should reject an empty NID" do
255
+ expect(grok_match(pattern, empty_nid)).not_to pass
256
+ end
257
+
258
+ it "should reject an NID with a leading hyphen" do
259
+ expect(grok_match(pattern, leading_hyphen)).not_to pass
260
+ end
261
+
262
+ it "should reject an NID with a special character" do
263
+ expect(grok_match(pattern, bad_nid)).not_to pass
264
+ end
265
+
266
+ it "should reject an NID with a percent sign" do
267
+ expect(grok_match(pattern, percent_nid)).not_to pass
268
+ end
269
+
270
+ it "should reject an NID longer than 32 characters" do
271
+ expect(grok_match(pattern, too_long_nid)).not_to pass
272
+ end
273
+
274
+ it "should reject a URN with an empty NSS" do
275
+ expect(grok_match(pattern, empty_nss)).not_to pass
276
+ end
277
+
278
+ it "should reject non-escape percent signs" do
279
+ expect(grok_match(pattern, naked_percent)).not_to pass
280
+ expect(grok_match(pattern, short_percent)).not_to pass
281
+ expect(grok_match(pattern, nonhex_percent)).not_to pass
282
+ end
283
+ end
197
284
  end
metadata CHANGED
@@ -1,29 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-patterns-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.1
4
+ version: 4.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Elastic
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-05-09 00:00:00.000000000 Z
11
+ date: 2016-07-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement
15
15
  requirements:
16
- - - "~>"
16
+ - - ">="
17
+ - !ruby/object:Gem::Version
18
+ version: '1.60'
19
+ - - "<="
17
20
  - !ruby/object:Gem::Version
18
- version: '2.0'
21
+ version: '2.99'
19
22
  name: logstash-core-plugin-api
20
23
  prerelease: false
21
24
  type: :runtime
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '1.60'
30
+ - - "<="
25
31
  - !ruby/object:Gem::Version
26
- version: '2.0'
32
+ version: '2.99'
27
33
  - !ruby/object:Gem::Dependency
28
34
  requirement: !ruby/object:Gem::Requirement
29
35
  requirements:
@@ -117,7 +123,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
117
123
  version: '0'
118
124
  requirements: []
119
125
  rubyforge_project:
120
- rubygems_version: 2.4.8
126
+ rubygems_version: 2.6.3
121
127
  signing_key:
122
128
  specification_version: 4
123
129
  summary: Patterns to be used in logstash