logstash-output-charrington 0.3.6 → 0.3.7
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 +4 -4
- data/lib/logstash/outputs/charrington/alter_redshift_table.rb +2 -1
- data/lib/logstash/outputs/charrington/create_redshift_table.rb +4 -0
- data/lib/logstash/outputs/charrington/insert.rb +5 -0
- data/lib/logstash/outputs/charrington/process.rb +4 -0
- data/logstash-output-charrington.gemspec +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: 18ae186abb98be6db8aca5f0713593a0597737f516608c97ea05fca4b58537a4
|
4
|
+
data.tar.gz: 9cecf3cf3ed56956fe8907032a6a2322a6c46495a8fe1fc074ac066d15b00d01
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f661d570cf5b4d04c170253354387da2b157f132a8b8dba60a5be5b5bdb7b087f959eb0234ce28c4dae91b984ea53e0ccbeafcbd5eb97a6dbf9d40474f236acf
|
7
|
+
data.tar.gz: fac3bc74393a48e88df615afe5c3451fb0d2d073c5a400ceae06ce3ca441da202324f8f964b24f6b665a627464cbece2da0b9d95badcbb78e74498384120f826
|
@@ -71,10 +71,10 @@ module Charrington
|
|
71
71
|
sql = "SELECT * FROM #{schema}#{table_name} LIMIT 1;"
|
72
72
|
stmt, rs = executeQuery(prep_sql(sql))
|
73
73
|
meta_data = rs.getMetaData()
|
74
|
-
stmt.close unless stmt.nil?
|
75
74
|
column_count = meta_data.getColumnCount()
|
76
75
|
(1..column_count).map {|i| meta_data.getColumnName(i) }
|
77
76
|
ensure
|
77
|
+
self.logger.info "Within ensure block of current_table_columns in alter_redshift_table.rb and value of stmt.nil?: #{stmt.nil?}"
|
78
78
|
stmt.close unless stmt.nil?
|
79
79
|
end
|
80
80
|
|
@@ -97,6 +97,7 @@ module Charrington
|
|
97
97
|
puts "Alter Redshift Unknown exception: #{e.message}, with SQL: #{sql}"
|
98
98
|
self.logger.info "Alter Redshift Unknown exception: #{e.message}"
|
99
99
|
ensure
|
100
|
+
self.logger.info "Within ensure block of execute in alter_redshift_table.rb and value of stmt.nil?: #{stmt.nil?}"
|
100
101
|
stmt.close unless stmt.nil?
|
101
102
|
end
|
102
103
|
|
@@ -24,6 +24,7 @@ module Charrington
|
|
24
24
|
|
25
25
|
def call
|
26
26
|
set_column_types
|
27
|
+
self.logger.info "Finished running set_column_types and now have column_types for create table of: #{column_types}"
|
27
28
|
create_table
|
28
29
|
true
|
29
30
|
rescue => e
|
@@ -75,12 +76,15 @@ module Charrington
|
|
75
76
|
end
|
76
77
|
|
77
78
|
def execute(sql)
|
79
|
+
self.logger.info "Running sql of: #{sql}"
|
80
|
+
|
78
81
|
statement = connection.prepareStatement( sql.gsub(/\s+/, " ").strip )
|
79
82
|
statement.execute()
|
80
83
|
rescue Java::JavaSql::SQLException => e
|
81
84
|
puts "Redshift SQLException: #{e.message}"
|
82
85
|
self.logger.info "Redshift SQLException: #{e.message}, with SQL: #{sql}"
|
83
86
|
ensure
|
87
|
+
self.logger.info "Within ensure block of create_redshift_table.rb and value of statement.nil?: #{statement.nil?}"
|
84
88
|
statement.close unless statement.nil?
|
85
89
|
end
|
86
90
|
end
|
@@ -39,17 +39,22 @@ module Charrington
|
|
39
39
|
end
|
40
40
|
|
41
41
|
def call
|
42
|
+
self.logger.info "Attempting insert into table name: #{table_name}"
|
42
43
|
insert_stmt = insert_statement
|
44
|
+
self.logger.info "Insert statement passed into prepareStatement is: #{insert_stmt}"
|
43
45
|
|
44
46
|
stmt = connection.prepareStatement(insert_stmt)
|
45
47
|
stmt = add_statement_event_params(stmt)
|
48
|
+
self.logger.info "Insert statement to be run is: #{insert_stmt}"
|
46
49
|
stmt.execute
|
47
50
|
should_retry
|
48
51
|
rescue Java::JavaSql::SQLException => e
|
49
52
|
case e.getSQLState()
|
50
53
|
when "42P01"
|
54
|
+
self.logger.info "Received Java::JavaSql::SQLException with error sql state of 42P01, moving to create table"
|
51
55
|
should_retry = create_table
|
52
56
|
when "42703"
|
57
|
+
self.logger.info "Received Java::JavaSql::SQLException with error sql state of 42703, moving to alter table"
|
53
58
|
should_retry = alter_table
|
54
59
|
else
|
55
60
|
raise InsertFailed, "Charrington: Rescue from SQLException #{e.message}"
|
@@ -6,6 +6,7 @@ module Charrington
|
|
6
6
|
# It handles retries where applicable.
|
7
7
|
|
8
8
|
include Service
|
9
|
+
include LogStash::Util::Loggable
|
9
10
|
attr_reader :event, :connection, :opts, :max_retries, :schema, :retry_max_interval, :driver
|
10
11
|
attr_accessor :retry_interval, :should_retry
|
11
12
|
|
@@ -32,10 +33,13 @@ module Charrington
|
|
32
33
|
while should_retry do
|
33
34
|
transformed = case driver
|
34
35
|
when "redshift"
|
36
|
+
self.logger.info "Found driver for redshift with event of: #{event}"
|
35
37
|
Charrington::TransformRedshift.call(event)
|
36
38
|
else
|
39
|
+
self.logger.info "Found driver for postgres with event of: #{event}"
|
37
40
|
Charrington::TransformPostgres.call(event)
|
38
41
|
end
|
42
|
+
self.logger.info "Transformed event into: #{transformed}"
|
39
43
|
should_retry = Charrington::Insert.call(connection, transformed, opts)
|
40
44
|
break if !should_retry
|
41
45
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-output-charrington
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- dconger
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2019-07-
|
13
|
+
date: 2019-07-29 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|