logstash-output-jdbc 0.2.9 → 0.2.10

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 41dff0734cecd8b90c11c38fa3b73de4f43d567a
4
- data.tar.gz: 2545f0178b9c31b099a9d57ce8dc8e3e67dfce0a
3
+ metadata.gz: 42d30ecc15a727d77d8524f69d4e0a72609aee39
4
+ data.tar.gz: 92cda3714612b6cfea4bf7b29626456a16bb0bf1
5
5
  SHA512:
6
- metadata.gz: 8252e3b02295b692bec722cd6c151ba2ab9e1f7b8119b8f483ee415bc3213eee4dd6f9b6b3fb5adc81d50308ad486a747322aded3affb740136952bbe0280633
7
- data.tar.gz: 5ec626918c6bfb5b8bd13b8b1b781a84e0ae218d49d3cff790c511157b1711e39419fdef4660c6121d0488aed8c531ee66b686408a7d26070a301c18623066ff
6
+ metadata.gz: 2dd985a6dc5042ac302d4f5d0623f3c252c3de98f2c3c41ab6da69fff1156a6cf65d2e3a6e4412a02cf63b8eab1f3392a5a39b0f8d30b28a15a53a76b87afef7
7
+ data.tar.gz: 91c071c056330b22461f96b8874bc8fb9a0c2065d34d52b66622d74d6f791ea0f462be65a09e33eb4dbc9da707dd26442c591530b4ee0550454c9262e1e7721e
@@ -286,10 +286,19 @@ class LogStash::Outputs::Jdbc < LogStash::Outputs::Base
286
286
 
287
287
  def add_statement_event_params(statement, event)
288
288
  @statement[1..-1].each_with_index do |i, idx|
289
- case event[i]
289
+ if i.is_a? String
290
+ value = event[i]
291
+ if value.nil? and i =~ /%\{/
292
+ value = event.sprintf(i)
293
+ end
294
+ else
295
+ value = i
296
+ end
297
+
298
+ case value
290
299
  when Time
291
300
  # See LogStash::Timestamp, below, for the why behind strftime.
292
- statement.setString(idx + 1, event[i].strftime(STRFTIME_FMT))
301
+ statement.setString(idx + 1, value.strftime(STRFTIME_FMT))
293
302
  when LogStash::Timestamp
294
303
  # XXX: Using setString as opposed to setTimestamp, because setTimestamp
295
304
  # doesn't behave correctly in some drivers (Known: sqlite)
@@ -298,44 +307,44 @@ class LogStash::Outputs::Jdbc < LogStash::Outputs::Base
298
307
  # choke on the 'T' in the string (Known: Derby).
299
308
  #
300
309
  # strftime appears to be the most reliable across drivers.
301
- statement.setString(idx + 1, event[i].time.strftime(STRFTIME_FMT))
310
+ statement.setString(idx + 1, value.time.strftime(STRFTIME_FMT))
302
311
  when Fixnum, Integer
303
- statement.setInt(idx + 1, event[i])
312
+ statement.setInt(idx + 1, value)
304
313
  when Float
305
- statement.setFloat(idx + 1, event[i])
314
+ statement.setFloat(idx + 1, value)
306
315
  when String
307
- statement.setString(idx + 1, event[i])
308
- when true
309
- statement.setBoolean(idx + 1, true)
310
- when false
311
- statement.setBoolean(idx + 1, false)
316
+ statement.setString(idx + 1, value)
317
+ when true, false
318
+ statement.setBoolean(idx + 1, value)
312
319
  else
313
- if event[i].nil? and i =~ /%\{/
314
- statement.setString(idx + 1, event.sprintf(i))
315
- else
316
- statement.setString(idx + 1, nil)
317
- end
320
+ statement.setString(idx + 1, nil)
318
321
  end
319
322
  end
320
323
 
321
324
  statement
322
325
  end
323
326
 
327
+
324
328
  def log_jdbc_exception(exception, retrying)
325
329
  current_exception = exception
330
+ log_text = 'JDBC - Exception. ' + (retrying ? 'Retrying' : 'Not retrying') + '.'
331
+ log_method = (retrying ? 'warn' : 'error')
332
+
326
333
  loop do
327
- if retrying
328
- @logger.error("JDBC Exception. Retrying.", :exception => current_exception)
334
+ @logger.send(log_method, log_text, :exception => current_exception, :backtrace => current_exception.backtrace)
335
+
336
+ if current_exception.respond_to? 'getNextException'
337
+ current_exception = current_exception.getNextException()
329
338
  else
330
- @logger.error("JDBC Exception. No retry.", :exception => current_exception)
339
+ current_exception = nil
331
340
  end
332
- current_exception = current_exception.getNextException()
341
+
333
342
  break if current_exception == nil
334
343
  end
335
344
  end
336
345
 
337
346
  def retry_exception?(exception)
338
- retrying = (exception.respond_to? 'getSQLState' and RETRYABLE_SQLSTATE_CLASSES.include?(exception.getSQLState[0,2]))
347
+ retrying = (exception.respond_to? 'getSQLState' and RETRYABLE_SQLSTATE_CLASSES.include?(exception.getSQLState.to_s[0,2]))
339
348
  log_jdbc_exception(exception, retrying)
340
349
 
341
350
  retrying
metadata CHANGED
@@ -1,49 +1,49 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-output-jdbc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.9
4
+ version: 0.2.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - the_angry_angel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-06-29 00:00:00.000000000 Z
11
+ date: 2016-07-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: logstash-core
14
+ name: stud
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - '>='
18
18
  - !ruby/object:Gem::Version
19
- version: 2.0.0.beta2
20
- - - <
21
- - !ruby/object:Gem::Version
22
- version: 3.0.0
19
+ version: '0'
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
24
  - - '>='
28
25
  - !ruby/object:Gem::Version
29
- version: 2.0.0.beta2
30
- - - <
31
- - !ruby/object:Gem::Version
32
- version: 3.0.0
26
+ version: '0'
33
27
  - !ruby/object:Gem::Dependency
34
- name: stud
28
+ name: logstash-core
35
29
  requirement: !ruby/object:Gem::Requirement
36
30
  requirements:
37
31
  - - '>='
38
32
  - !ruby/object:Gem::Version
39
- version: '0'
33
+ version: 2.0.0
34
+ - - <
35
+ - !ruby/object:Gem::Version
36
+ version: 3.0.0
40
37
  type: :runtime
41
38
  prerelease: false
42
39
  version_requirements: !ruby/object:Gem::Requirement
43
40
  requirements:
44
41
  - - '>='
45
42
  - !ruby/object:Gem::Version
46
- version: '0'
43
+ version: 2.0.0
44
+ - - <
45
+ - !ruby/object:Gem::Version
46
+ version: 3.0.0
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: logstash-codec-plain
49
49
  requirement: !ruby/object:Gem::Requirement
@@ -62,16 +62,16 @@ dependencies:
62
62
  name: logstash-devutils
63
63
  requirement: !ruby/object:Gem::Requirement
64
64
  requirements:
65
- - - '>='
65
+ - - '='
66
66
  - !ruby/object:Gem::Version
67
- version: '0'
67
+ version: 0.0.18
68
68
  type: :development
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
- - - '>='
72
+ - - '='
73
73
  - !ruby/object:Gem::Version
74
- version: '0'
74
+ version: 0.0.18
75
75
  description: This gem is a logstash plugin required to be installed on top of the
76
76
  Logstash core pipeline using $LS_HOME/bin/plugin install gemname. This gem is not
77
77
  a stand-alone program
@@ -81,17 +81,21 @@ extensions: []
81
81
  extra_rdoc_files: []
82
82
  files:
83
83
  - lib/com/zaxxer/HikariCP/2.4.2/HikariCP-2.4.2.jar
84
+ - lib/com/zaxxer/HikariCP/2.4.6/HikariCP-2.4.6.jar
84
85
  - lib/log4j/log4j/1.2.17/log4j-1.2.17.jar
85
86
  - lib/logstash/outputs/jdbc.rb
86
87
  - lib/logstash-output-jdbc_jars.rb
87
88
  - lib/logstash-output-jdbc_ring-buffer.rb
88
89
  - lib/org/slf4j/slf4j-api/1.7.12/slf4j-api-1.7.12.jar
90
+ - lib/org/slf4j/slf4j-api/1.7.16/slf4j-api-1.7.16.jar
89
91
  - lib/org/slf4j/slf4j-log4j12/1.7.13/slf4j-log4j12-1.7.13.jar
92
+ - lib/org/slf4j/slf4j-log4j12/1.7.21/slf4j-log4j12-1.7.21.jar
90
93
  - vendor/jar-dependencies/runtime-jars/HikariCP-2.4.2.jar
94
+ - vendor/jar-dependencies/runtime-jars/HikariCP-2.4.6.jar
91
95
  - vendor/jar-dependencies/runtime-jars/log4j-1.2.17.jar
92
- - vendor/jar-dependencies/runtime-jars/slf4j-api-1.7.12.jar
93
96
  - vendor/jar-dependencies/runtime-jars/slf4j-api-1.7.13.jar
94
- - vendor/jar-dependencies/runtime-jars/slf4j-log4j12-1.7.13.jar
97
+ - vendor/jar-dependencies/runtime-jars/slf4j-api-1.7.16.jar
98
+ - vendor/jar-dependencies/runtime-jars/slf4j-log4j12-1.7.21.jar
95
99
  - vendor/jar-dependencies/runtime-jars/slf4j-nop-1.7.13.jar
96
100
  - spec/outputs/jdbc_spec.rb
97
101
  - LICENSE.txt
@@ -102,8 +106,7 @@ licenses:
102
106
  metadata:
103
107
  logstash_plugin: 'true'
104
108
  logstash_group: output
105
- post_install_message: logstash-output-jdbc 0.2.0 introduces several new features -
106
- please ensure you check the documentation in the README file
109
+ post_install_message:
107
110
  rdoc_options: []
108
111
  require_paths:
109
112
  - lib