syslogstash 1.0.2 → 1.1.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
  SHA1:
3
- metadata.gz: 1435692b749eee3c093f02e635ed30433dfeaac0
4
- data.tar.gz: 684800c8c6063e5a867126a83a7c012c9fcc1b11
3
+ metadata.gz: 2f8f80e926eda859f5c1839e9d5699f35dbeccd1
4
+ data.tar.gz: b96c2ea81a193fdad126b77124367eac273d1845
5
5
  SHA512:
6
- metadata.gz: 9fd65190b17e4236a82ed7084bb85da53badcc48998f687b724545afbdadead3a4e5af2968aaa9134e8a243b395378bd0491d826cf3402e45018b7909a53f046
7
- data.tar.gz: 95a7861e5c88e393bc3277944362818afa96b179db8fec97cf118d8172c66b3b23986da0d2a328f3119fd76fbbe6a7cd57518f7279846671f1cdfd494ead7109
6
+ metadata.gz: 2f081a3a6127d4cf334b07cff5bbc14dd1a056598fe435482f96dcb3c889db7fe08c0ee1e3698e12fd019589a07939dbd765b8c8eaa7a24d722ff3c22ad9b35d
7
+ data.tar.gz: 5a3dea865b75eb70dde5bd755cb460dfd467ac6318cd43b960a9bcee18cd5b1c81310814f793730207cd66a17bb358076484fb116160d61b11ebe1ac4acc1b9e
@@ -29,7 +29,10 @@ class Syslogstash::LogstashWriter
29
29
  def send_entry(e)
30
30
  @entries_mutex.synchronize do
31
31
  @entries << { content: e, arrival_timestamp: Time.now }
32
- @entries.shift while @entries.length > @backlog
32
+ while @entries.length > @backlog
33
+ @entries.shift
34
+ @metrics.dropped
35
+ end
33
36
  end
34
37
  @worker.run if @worker
35
38
  end
@@ -11,6 +11,7 @@ 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
+ @dropped = prom.counter(:syslogstash_messages_dropped, "How many syslog messages have been dropped from the backlog queue")
14
15
  end
15
16
 
16
17
  def received(socket, stamp)
@@ -35,6 +36,11 @@ class Syslogstash::PrometheusExporter
35
36
  end
36
37
  end
37
38
 
39
+ def dropped
40
+ @queue.set({}, @queue.get({}) - 1)
41
+ @dropped.increment(logstash_server: server)
42
+ end
43
+
38
44
  def run
39
45
  @thread = Thread.new do
40
46
  app = Rack::Builder.new
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.0.2
4
+ version: 1.1.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: 2016-10-11 00:00:00.000000000 Z
11
+ date: 2016-10-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: prometheus-client