logstash-output-redis-increment 0.4.0 → 0.6.0

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
  SHA256:
3
- metadata.gz: 1b10aba9abd87829ca936d416c24c28978bb5790d5fd382677f69286f882248f
4
- data.tar.gz: b5039978aac7d26fb12f6f55e68e9e1112452de3fa33657436c6ff2104791880
3
+ metadata.gz: 786031e2c45be1b11123b2eb38b042c63b9bd0a2762c48e7a19eff60c33e4ad3
4
+ data.tar.gz: 793c99fc08df2ba803c701e5754091544d243ffcfd7c322bb15af1cea00fa348
5
5
  SHA512:
6
- metadata.gz: ea0f5d89338356f343c5c0ca735d76672274d90d6cb85bbfe158f7bf6f3f666ffb1a61441b9c28468b535bfc478eede766949a520b055878f14872aef3920edd
7
- data.tar.gz: 16c4b642c3b5194681fb2d0e97cf89c28037a0dcb5bdbfd8e9cdd4e5b05c52523ec390b6500df3b48169d0b11d03c433e213397a9fd6d8285ca696d8268303c7
6
+ metadata.gz: fd0225dbe036a3eae00167318c1e3d04f2827d3522c10ae78714cdfcca5562e3935305bffbed9fd66dbb4a29e07e90c94a97e5bcd0fbdabf339c8496b907b5ee
7
+ data.tar.gz: ff32a7b5054d14911552c4a6986b2c21e7df673e8488d3e059eb3d9e7156dc797d1081e8190d5cf8f2bb4e27b6467b425856c8823b4b911058820061afeaf6f4
@@ -28,7 +28,7 @@ class LogStash::Outputs::Redis < LogStash::Outputs::Base
28
28
 
29
29
  public
30
30
  def register
31
- require 'redis'
31
+ require "redis-clustering"
32
32
  @redis = nil
33
33
  @codec.on_event(&method(:send_to_redis))
34
34
  end # def register
@@ -48,25 +48,9 @@ class LogStash::Outputs::Redis < LogStash::Outputs::Base
48
48
  end
49
49
  end # def event
50
50
 
51
- def send_to_redis(event, payload)
52
- begin
53
- key = event.sprintf(@key)
54
-
55
- @redis ||= connect
56
- @redis.incr(key)
57
- rescue => e
58
- @logger.warn("Failed to increment event to Redis", :event => event,
59
- :identity => identity, :exception => e,
60
- :backtrace => e.backtrace)
61
- sleep @reconnect_interval
62
- @redis = nil
63
- retry
64
- end
65
- end #def send_to_redis
66
-
67
51
  private
68
52
  def connect
69
- @current_host, @current_port = @host[@host_idx].split(':')
53
+ @current_host, @current_port = @host.split(':')
70
54
  params = {
71
55
  :host => @current_host,
72
56
  :port => @current_port,
@@ -79,11 +63,29 @@ class LogStash::Outputs::Redis < LogStash::Outputs::Base
79
63
  params[:password] = @password.value
80
64
  end
81
65
 
82
- Redis.new(params)
83
- end
66
+ node_list = Array.new
67
+ node_list << @host
68
+
69
+ Redis::Cluster.new(nodes: node_list)
70
+ end #def connect
84
71
 
85
72
  # A string used to identify a Redis instance in log messages
86
73
  def identity
87
74
  "redis://#{@password}@#{@current_host}:#{@current_port}/#{@db} #{@key}"
88
75
  end
76
+
77
+ def send_to_redis(event, payload)
78
+ key = event.sprintf(@key)
79
+ begin
80
+ @redis ||= connect
81
+ @redis.incr(key)
82
+ rescue => e
83
+ @logger.warn("Failed to increment event to Redis", :event => event,
84
+ :identity => identity, :exception => e,
85
+ :backtrace => e.backtrace)
86
+ sleep @reconnect_interval
87
+ @redis = nil
88
+ retry
89
+ end
90
+ end #def send_to_redis
89
91
  end # class LogStash::Outputs::Redis
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'logstash-output-redis-increment'
3
- s.version = '0.4.0'
3
+ s.version = '0.6.0'
4
4
  s.licenses = ['Apache-2.0']
5
5
  s.summary = 'Logstash Output Plugin for RedisIncrement'
6
6
  s.description = 'Logstash Redis Output plugin for incrementing a key from each event.'
@@ -21,5 +21,6 @@ Gem::Specification.new do |s|
21
21
  s.add_runtime_dependency "logstash-core-plugin-api", "~> 2.0"
22
22
  s.add_runtime_dependency 'redis', '~> 4'
23
23
  s.add_runtime_dependency "logstash-codec-plain"
24
+ s.add_runtime_dependency "redis-clustering"
24
25
  s.add_development_dependency "logstash-devutils"
25
26
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-output-redis-increment
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Evan Vinciguerra
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ name: redis-clustering
62
+ prerelease: false
63
+ type: :runtime
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
55
69
  - !ruby/object:Gem::Dependency
56
70
  requirement: !ruby/object:Gem::Requirement
57
71
  requirements: