syslogstash 1.2.1 → 1.3.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 +4 -4
- data/lib/syslogstash/logstash_writer.rb +2 -3
- data/lib/syslogstash/prometheus_exporter.rb +3 -2
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4fae50a372aca78fab4d20cb3a21ff4248988abf
|
4
|
+
data.tar.gz: 391ae0a267341f5571e9c90427e83b2862628c2f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6b0ab3566b3ce68964cfcb34be6efbdc3799394c76e72d672c53bb9a66e723e888df989c8f39155662d8151f6dbfd3b1915a08d212c92d8ca33cc4e0ad20bacc
|
7
|
+
data.tar.gz: 8798ef4d1a150cbf105028e5b6d7dcd9d72ed8309f0e998da6f3d0e8989b0e47016b9a9ba02f018d031d627687f28ccdf8a9450f622efcdf1763cef07dead38c
|
@@ -104,10 +104,9 @@ class Syslogstash::LogstashWriter
|
|
104
104
|
end
|
105
105
|
else
|
106
106
|
begin
|
107
|
-
#
|
108
|
-
next_server = @servers.
|
107
|
+
# Pick another server to connect to at random
|
108
|
+
next_server = @servers.sort { rand }.first
|
109
109
|
debug { "Trying to connect to #{next_server.to_s}" }
|
110
|
-
@servers.push(next_server)
|
111
110
|
@current_server = TCPSocket.new(next_server.hostname, next_server.port)
|
112
111
|
rescue SystemCallError => ex
|
113
112
|
# Connection failed for any number of reasons; try again
|
@@ -11,12 +11,13 @@ class Syslogstash::PrometheusExporter
|
|
11
11
|
@msg_out = prom.counter(:syslogstash_messages_sent, "The number of logstash messages sent to each logstash server")
|
12
12
|
@lag = prom.gauge(:syslogstash_lag_ms, "How far behind we are in relaying messages")
|
13
13
|
@queue = prom.gauge(:syslogstash_queue_size, "How many messages are queued to be sent")
|
14
|
+
@q_mutex = Mutex.new
|
14
15
|
@dropped = prom.counter(:syslogstash_messages_dropped, "How many syslog messages have been dropped from the backlog queue")
|
15
16
|
end
|
16
17
|
|
17
18
|
def received(socket, stamp)
|
18
19
|
@msg_in.increment(socket_path: socket)
|
19
|
-
@queue.set({}, (@queue.get({}) || 0) + 1)
|
20
|
+
@q_mutex.synchronize { @queue.set({}, (@queue.get({}) || 0) + 1) }
|
20
21
|
|
21
22
|
if @most_recent_received.nil? || @most_recent_received < stamp
|
22
23
|
@most_recent_received = stamp
|
@@ -27,7 +28,7 @@ class Syslogstash::PrometheusExporter
|
|
27
28
|
|
28
29
|
def sent(server, stamp)
|
29
30
|
@msg_out.increment(logstash_server: server)
|
30
|
-
@queue.set({}, @queue.get({}) - 1)
|
31
|
+
@q_mutex.synchronize { @queue.set({}, @queue.get({}) - 1) }
|
31
32
|
|
32
33
|
if @most_recent_sent.nil? || @most_recent_sent < stamp
|
33
34
|
@most_recent_sent = stamp
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: syslogstash
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Palmer
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-01-
|
11
|
+
date: 2018-01-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: prometheus-client
|
@@ -226,3 +226,4 @@ signing_key:
|
|
226
226
|
specification_version: 4
|
227
227
|
summary: Send messages from syslog UNIX sockets to logstash
|
228
228
|
test_files: []
|
229
|
+
has_rdoc:
|