riemann-client 1.1.0 → 1.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/dependabot.yml +7 -0
- data/.rubocop.yml +2 -3
- data/CHANGELOG.md +16 -0
- data/lib/riemann/client/ssl_socket.rb +1 -35
- data/lib/riemann/client/tcp.rb +3 -1
- data/lib/riemann/client/tcp_socket.rb +10 -2
- data/lib/riemann/client/udp.rb +1 -0
- data/lib/riemann/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4d1995b06fc640ef8e66c806a1d89d59dfa58238c11049310255bf542121a4ea
|
4
|
+
data.tar.gz: dccb036f711cc73847cd81104756cd2d8b52fd9a5aa67c0528bd721a040ab504
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3079702426c293a96a1e07b38ccffb281a53ab31ca653bfb5dcf2952a0a53c5e714b55e92d42ba28bb0cfff0b97bf472a2eb319dc90a12350f72273e4954bd09
|
7
|
+
data.tar.gz: 46c21db177b2d22c61bd82bfd94b62321b54c893a596f37daf9f8e1e9297a02689784d3637a8be54cd0d9b4dd4f9f7e21a10c91d1e5232fe001b84d984173c8f
|
data/.github/dependabot.yml
CHANGED
@@ -5,7 +5,14 @@
|
|
5
5
|
|
6
6
|
version: 2
|
7
7
|
updates:
|
8
|
+
# Open PR for gem updates
|
8
9
|
- package-ecosystem: "bundler" # See documentation for possible values
|
9
10
|
directory: "/" # Location of package manifests
|
10
11
|
schedule:
|
11
12
|
interval: "daily"
|
13
|
+
|
14
|
+
# Open PR for GitHub Actions updates
|
15
|
+
- package-ecosystem: "github-actions"
|
16
|
+
directory: "/"
|
17
|
+
schedule:
|
18
|
+
interval: "daily"
|
data/.rubocop.yml
CHANGED
@@ -1,4 +1,6 @@
|
|
1
1
|
---
|
2
|
+
AllCops:
|
3
|
+
TargetRubyVersion: 2.6
|
2
4
|
require:
|
3
5
|
- rubocop-rspec
|
4
6
|
Metrics/AbcSize:
|
@@ -13,8 +15,5 @@ Metrics/MethodLength:
|
|
13
15
|
Enabled: false
|
14
16
|
Metrics/PerceivedComplexity:
|
15
17
|
Enabled: false
|
16
|
-
Naming/VariableNumber:
|
17
|
-
AllowedIdentifiers:
|
18
|
-
- TLSv1_2
|
19
18
|
Style/Documentation:
|
20
19
|
Enabled: false
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,21 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## [v1.2.1](https://github.com/riemann/riemann-ruby-client/tree/v1.2.1) (2023-07-30)
|
4
|
+
|
5
|
+
[Full Changelog](https://github.com/riemann/riemann-ruby-client/compare/v1.2.0...v1.2.1)
|
6
|
+
|
7
|
+
**Fixed bugs:**
|
8
|
+
|
9
|
+
- Fix sending large batch of events over TLS [\#51](https://github.com/riemann/riemann-ruby-client/pull/51) ([smortex](https://github.com/smortex))
|
10
|
+
|
11
|
+
## [v1.2.0](https://github.com/riemann/riemann-ruby-client/tree/v1.2.0) (2023-06-28)
|
12
|
+
|
13
|
+
[Full Changelog](https://github.com/riemann/riemann-ruby-client/compare/v1.1.0...v1.2.0)
|
14
|
+
|
15
|
+
**Implemented enhancements:**
|
16
|
+
|
17
|
+
- Allow connection to Riemann using TLS 1.3 [\#49](https://github.com/riemann/riemann-ruby-client/pull/49) ([smortex](https://github.com/smortex))
|
18
|
+
|
3
19
|
## [v1.1.0](https://github.com/riemann/riemann-ruby-client/tree/v1.1.0) (2023-01-23)
|
4
20
|
|
5
21
|
[Full Changelog](https://github.com/riemann/riemann-ruby-client/compare/v1.0.1...v1.1.0)
|
@@ -20,7 +20,7 @@ module Riemann
|
|
20
20
|
ctx.key = OpenSSL::PKey::RSA.new(File.read(@key_file))
|
21
21
|
ctx.cert = OpenSSL::X509::Certificate.new(File.read(@cert_file))
|
22
22
|
ctx.ca_file = @ca_file if @ca_file
|
23
|
-
ctx.
|
23
|
+
ctx.min_version = OpenSSL::SSL::TLS1_2_VERSION
|
24
24
|
ctx.verify_mode = OpenSSL::SSL::VERIFY_PEER if @ssl_verify
|
25
25
|
end
|
26
26
|
end
|
@@ -53,40 +53,6 @@ module Riemann
|
|
53
53
|
end
|
54
54
|
ssl_socket
|
55
55
|
end
|
56
|
-
|
57
|
-
# Internal: Read up to a maxlen of data from the socket and store it in outbuf
|
58
|
-
#
|
59
|
-
# maxlen - the maximum number of bytes to read from the socket
|
60
|
-
# outbuf - the buffer in which to store the bytes.
|
61
|
-
#
|
62
|
-
# Returns the bytes read
|
63
|
-
def readpartial(maxlen, outbuf = nil)
|
64
|
-
super(maxlen, outbuf)
|
65
|
-
rescue OpenSSL::SSL::SSLErrorWaitReadable
|
66
|
-
unless wait_readable(read_timeout)
|
67
|
-
raise Timeout, "Could not read from #{host}:#{port} in #{read_timeout} seconds"
|
68
|
-
end
|
69
|
-
|
70
|
-
retry
|
71
|
-
end
|
72
|
-
|
73
|
-
# Internal: Write the given data to the socket
|
74
|
-
#
|
75
|
-
# buf - the data to write to the socket.
|
76
|
-
#
|
77
|
-
# Raises an error if it is unable to write the data to the socket within the
|
78
|
-
# write_timeout.
|
79
|
-
#
|
80
|
-
# returns nothing
|
81
|
-
def write(buf)
|
82
|
-
super(buf)
|
83
|
-
rescue OpenSSL::SSL::SSLErrorWaitWritable
|
84
|
-
unless wait_writable(write_timeout)
|
85
|
-
raise Timeout, "Could not write to #{host}:#{port} in #{write_timeout} seconds"
|
86
|
-
end
|
87
|
-
|
88
|
-
retry
|
89
|
-
end
|
90
56
|
end
|
91
57
|
end
|
92
58
|
end
|
data/lib/riemann/client/tcp.rb
CHANGED
@@ -17,7 +17,7 @@ module Riemann
|
|
17
17
|
|
18
18
|
# Public: Return a socket factory
|
19
19
|
def self.socket_factory
|
20
|
-
@socket_factory
|
20
|
+
@socket_factory ||= proc { |options|
|
21
21
|
if options[:ssl]
|
22
22
|
SSLSocket.connect(options)
|
23
23
|
else
|
@@ -29,6 +29,8 @@ module Riemann
|
|
29
29
|
def initialize(options = {}) # rubocop:disable Lint/MissingSuper
|
30
30
|
@options = options
|
31
31
|
@locket = Monitor.new
|
32
|
+
@socket = nil
|
33
|
+
@pid = nil
|
32
34
|
end
|
33
35
|
|
34
36
|
def socket
|
@@ -311,7 +311,7 @@ module Riemann
|
|
311
311
|
# Returns the bytes read
|
312
312
|
def readpartial(maxlen, outbuf = nil)
|
313
313
|
socket.read_nonblock(maxlen, outbuf)
|
314
|
-
rescue Errno::EWOULDBLOCK, Errno::EAGAIN, Errno::ECONNRESET
|
314
|
+
rescue Errno::EWOULDBLOCK, Errno::EAGAIN, Errno::ECONNRESET, IO::WaitReadable
|
315
315
|
unless wait_readable(read_timeout)
|
316
316
|
raise Timeout, "Could not read from #{host}:#{port} in #{read_timeout} seconds"
|
317
317
|
end
|
@@ -332,11 +332,19 @@ module Riemann
|
|
332
332
|
written = socket.write_nonblock(buf)
|
333
333
|
buf = buf[written, buf.length]
|
334
334
|
end
|
335
|
-
rescue Errno::EWOULDBLOCK, Errno::EINTR, Errno::EAGAIN, Errno::ECONNRESET
|
335
|
+
rescue Errno::EWOULDBLOCK, Errno::EINTR, Errno::EAGAIN, Errno::ECONNRESET, IO::WaitWritable
|
336
336
|
unless wait_writable(write_timeout)
|
337
337
|
raise Timeout, "Could not write to #{host}:#{port} in #{write_timeout} seconds"
|
338
338
|
end
|
339
339
|
|
340
|
+
retry
|
341
|
+
rescue IO::WaitReadable
|
342
|
+
# Also rescued for SSL renegotiation in OpenSSL::SSL::SSLSocket according to
|
343
|
+
# https://ruby-doc.org/core-2.7.1/IO.html#method-c-select
|
344
|
+
unless wait_readable(read_timeout)
|
345
|
+
raise Timeout, "Could not write to #{host}:#{port} in #{write_timeout} seconds"
|
346
|
+
end
|
347
|
+
|
340
348
|
retry
|
341
349
|
end
|
342
350
|
|
data/lib/riemann/client/udp.rb
CHANGED
data/lib/riemann/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: riemann-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1
|
4
|
+
version: 1.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kyle Kingsbury
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-07-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -164,7 +164,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
164
164
|
- !ruby/object:Gem::Version
|
165
165
|
version: '0'
|
166
166
|
requirements: []
|
167
|
-
rubygems_version: 3.
|
167
|
+
rubygems_version: 3.4.15
|
168
168
|
signing_key:
|
169
169
|
specification_version: 4
|
170
170
|
summary: Client for the distributed event system Riemann.
|