logstash-input-jdbc 4.3.3 → 4.3.4
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/CHANGELOG.md +3 -0
 - data/LICENSE +1 -1
 - data/lib/logstash/plugin_mixins/jdbc.rb +25 -18
 - data/logstash-input-jdbc.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: 4182f11b49a8109b280f7c078b547a71b3c7134dc54834b06705f94ba064d216
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 6decb981a1ce99e9aac59da1b0259968db299e348d16c76a83cac07e87a58fa8
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 8d9cb81fe24f6f301166f2f8baeaa90f18e43f4d3d7ef0ff9c09516d9edd57a5bf6e4eaa9d3a112af7616b062b39f781384dbc25ee3ef9a20fbc1594e36612ca
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: e2b979fdfc781cda71aaa0aa1232f9c25b21e120f89ec07729e3bb41e68a57cd7d6d8c467a6db79bf66a83d2f9f29209d2ed76877fe1595af0ee6e2190649152
         
     | 
    
        data/CHANGELOG.md
    CHANGED
    
    
    
        data/LICENSE
    CHANGED
    
    
| 
         @@ -103,7 +103,8 @@ module LogStash::PluginMixins::Jdbc 
     | 
|
| 
       103 
103 
     | 
    
         
             
                opts = {
         
     | 
| 
       104 
104 
     | 
    
         
             
                  :user => @jdbc_user,
         
     | 
| 
       105 
105 
     | 
    
         
             
                  :password => @jdbc_password.nil? ? nil : @jdbc_password.value,
         
     | 
| 
       106 
     | 
    
         
            -
                  :pool_timeout => @jdbc_pool_timeout
         
     | 
| 
      
 106 
     | 
    
         
            +
                  :pool_timeout => @jdbc_pool_timeout,
         
     | 
| 
      
 107 
     | 
    
         
            +
                  :keep_reference => false
         
     | 
| 
       107 
108 
     | 
    
         
             
                }.merge(@sequel_opts)
         
     | 
| 
       108 
109 
     | 
    
         
             
                retry_attempts = @connection_retry_attempts
         
     | 
| 
       109 
110 
     | 
    
         
             
                loop do
         
     | 
| 
         @@ -232,24 +233,12 @@ module LogStash::PluginMixins::Jdbc 
     | 
|
| 
       232 
233 
     | 
    
         
             
                    @tracking_column_warning_sent = false
         
     | 
| 
       233 
234 
     | 
    
         
             
                    @logger.debug? and @logger.debug("Executing JDBC query", :statement => statement, :parameters => parameters, :count => query.count)
         
     | 
| 
       234 
235 
     | 
    
         | 
| 
       235 
     | 
    
         
            -
                     
     | 
| 
       236 
     | 
    
         
            -
                       
     | 
| 
       237 
     | 
    
         
            -
             
     | 
| 
       238 
     | 
    
         
            -
             
     | 
| 
       239 
     | 
    
         
            -
                          if @tracking_column_type=="timestamp" and @use_column_value and sql_last_value.is_a?(DateTime)
         
     | 
| 
       240 
     | 
    
         
            -
                            sql_last_value=Time.parse(sql_last_value.to_s) # Coerce the timestamp to a `Time`
         
     | 
| 
       241 
     | 
    
         
            -
                          end
         
     | 
| 
       242 
     | 
    
         
            -
                          yield extract_values_from(row)
         
     | 
| 
       243 
     | 
    
         
            -
                        end
         
     | 
| 
       244 
     | 
    
         
            -
                      end
         
     | 
| 
       245 
     | 
    
         
            -
                    else
         
     | 
| 
       246 
     | 
    
         
            -
                      query.each do |row|
         
     | 
| 
       247 
     | 
    
         
            -
                        sql_last_value = get_column_value(row) if @use_column_value
         
     | 
| 
       248 
     | 
    
         
            -
                        if @tracking_column_type=="timestamp" and @use_column_value and sql_last_value.is_a?(DateTime)
         
     | 
| 
       249 
     | 
    
         
            -
                          sql_last_value=Time.parse(sql_last_value.to_s) # Coerce the timestamp to a `Time`
         
     | 
| 
       250 
     | 
    
         
            -
                        end
         
     | 
| 
       251 
     | 
    
         
            -
                        yield extract_values_from(row)
         
     | 
| 
      
 236 
     | 
    
         
            +
                    perform_query(query) do |row|
         
     | 
| 
      
 237 
     | 
    
         
            +
                      sql_last_value = get_column_value(row) if @use_column_value
         
     | 
| 
      
 238 
     | 
    
         
            +
                      if @tracking_column_type=="timestamp" and @use_column_value and sql_last_value.is_a?(DateTime)
         
     | 
| 
      
 239 
     | 
    
         
            +
                        sql_last_value = sql_last_value.to_time # Coerce the timestamp to a `Time`
         
     | 
| 
       252 
240 
     | 
    
         
             
                      end
         
     | 
| 
      
 241 
     | 
    
         
            +
                      yield extract_values_from(row)
         
     | 
| 
       253 
242 
     | 
    
         
             
                    end
         
     | 
| 
       254 
243 
     | 
    
         
             
                    success = true
         
     | 
| 
       255 
244 
     | 
    
         
             
                  rescue Sequel::DatabaseConnectionError, Sequel::DatabaseError => e
         
     | 
| 
         @@ -263,6 +252,24 @@ module LogStash::PluginMixins::Jdbc 
     | 
|
| 
       263 
252 
     | 
    
         
             
                  return success
         
     | 
| 
       264 
253 
     | 
    
         
             
              end
         
     | 
| 
       265 
254 
     | 
    
         | 
| 
      
 255 
     | 
    
         
            +
              # Performs the query, respecting our pagination settings, yielding once per row of data
         
     | 
| 
      
 256 
     | 
    
         
            +
              # @param query [Sequel::Dataset]
         
     | 
| 
      
 257 
     | 
    
         
            +
              # @yieldparam row [Hash{Symbol=>Object}]
         
     | 
| 
      
 258 
     | 
    
         
            +
              private
         
     | 
| 
      
 259 
     | 
    
         
            +
              def perform_query(query)
         
     | 
| 
      
 260 
     | 
    
         
            +
                if @jdbc_paging_enabled
         
     | 
| 
      
 261 
     | 
    
         
            +
                  query.each_page(@jdbc_page_size) do |paged_dataset|
         
     | 
| 
      
 262 
     | 
    
         
            +
                    paged_dataset.each do |row|
         
     | 
| 
      
 263 
     | 
    
         
            +
                      yield row
         
     | 
| 
      
 264 
     | 
    
         
            +
                    end
         
     | 
| 
      
 265 
     | 
    
         
            +
                  end
         
     | 
| 
      
 266 
     | 
    
         
            +
                else
         
     | 
| 
      
 267 
     | 
    
         
            +
                  query.each do |row|
         
     | 
| 
      
 268 
     | 
    
         
            +
                    yield row
         
     | 
| 
      
 269 
     | 
    
         
            +
                  end
         
     | 
| 
      
 270 
     | 
    
         
            +
                end
         
     | 
| 
      
 271 
     | 
    
         
            +
              end
         
     | 
| 
      
 272 
     | 
    
         
            +
             
     | 
| 
       266 
273 
     | 
    
         
             
              public
         
     | 
| 
       267 
274 
     | 
    
         
             
              def get_column_value(row)
         
     | 
| 
       268 
275 
     | 
    
         
             
                if !row.has_key?(@tracking_column.to_sym)
         
     | 
    
        data/logstash-input-jdbc.gemspec
    CHANGED
    
    | 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            Gem::Specification.new do |s|
         
     | 
| 
       2 
2 
     | 
    
         
             
              s.name = 'logstash-input-jdbc'
         
     | 
| 
       3 
     | 
    
         
            -
              s.version         = '4.3. 
     | 
| 
      
 3 
     | 
    
         
            +
              s.version         = '4.3.4'
         
     | 
| 
       4 
4 
     | 
    
         
             
              s.licenses = ['Apache License (2.0)']
         
     | 
| 
       5 
5 
     | 
    
         
             
              s.summary = "Creates events from JDBC data"
         
     | 
| 
       6 
6 
     | 
    
         
             
              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"
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: logstash-input-jdbc
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 4.3. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 4.3.4
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Elastic
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire:
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date:  
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2018-02-14 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     |