syslogstash 2.2.0 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.editorconfig +7 -0
- data/.travis.yml +11 -0
- data/Dockerfile +3 -6
- data/README.md +38 -29
- data/bin/syslogstash +3 -55
- data/lib/syslogstash.rb +49 -44
- data/lib/syslogstash/syslog_reader.rb +212 -180
- data/syslogstash.gemspec +27 -26
- metadata +25 -14
- data/Makefile +0 -14
- data/lib/syslogstash/config.rb +0 -118
- data/lib/syslogstash/logstash_writer.rb +0 -202
- data/lib/syslogstash/prometheus_exporter.rb +0 -47
@@ -1,47 +0,0 @@
|
|
1
|
-
require 'frankenstein/server'
|
2
|
-
require 'logger'
|
3
|
-
|
4
|
-
class Syslogstash::PrometheusExporter
|
5
|
-
attr_reader :thread
|
6
|
-
|
7
|
-
def initialize(cfg)
|
8
|
-
@stats_server = Frankenstein::Server.new(port: 9159, logger: cfg.logger, metrics_prefix: "syslogstash_server")
|
9
|
-
|
10
|
-
@msg_in = prom.counter(:syslogstash_messages_received_total, "The number of syslog messages received from the log socket")
|
11
|
-
@msg_out = prom.counter(:syslogstash_messages_sent_total, "The number of logstash messages sent to each logstash server")
|
12
|
-
@lag = prom.gauge(:syslogstash_last_relayed_message_timestamp, "When the last message that was successfully relayed to logstash was originally received")
|
13
|
-
@queue = prom.gauge(:syslogstash_queue_size, "How many messages are currently in the queue to be sent")
|
14
|
-
@dropped = prom.counter(:syslogstash_messages_dropped, "How many messages have been dropped from the backlog queue")
|
15
|
-
|
16
|
-
@q_mutex = Mutex.new
|
17
|
-
|
18
|
-
@lag.set({}, 0)
|
19
|
-
@queue.set({}, 0)
|
20
|
-
end
|
21
|
-
|
22
|
-
def received(socket)
|
23
|
-
@msg_in.increment(socket_path: socket)
|
24
|
-
@q_mutex.synchronize { @queue.set({}, @queue.get({}) + 1) }
|
25
|
-
end
|
26
|
-
|
27
|
-
def sent(server, stamp)
|
28
|
-
@msg_out.increment(logstash_server: server)
|
29
|
-
@q_mutex.synchronize { @queue.set({}, @queue.get({}) - 1) }
|
30
|
-
@lag.set({}, stamp.to_f)
|
31
|
-
end
|
32
|
-
|
33
|
-
def dropped
|
34
|
-
@queue.set({}, @queue.get({}) - 1)
|
35
|
-
@dropped.increment({})
|
36
|
-
end
|
37
|
-
|
38
|
-
def run
|
39
|
-
@stats_server.run
|
40
|
-
end
|
41
|
-
|
42
|
-
private
|
43
|
-
|
44
|
-
def prom
|
45
|
-
@stats_server.registry
|
46
|
-
end
|
47
|
-
end
|