logstash-output-google_bigquery 4.1.1-java → 4.1.2-java
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +3 -0
- data/lib/logstash/outputs/google_bigquery.rb +17 -2
- data/logstash-output-google_bigquery.gemspec +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9361650ebd1559f1d2e7237028993cb9d86ae9cd0c9e86473a4d9f5910418736
|
4
|
+
data.tar.gz: b82fb5507e89bd687de2fda556937817164bb3b25aaaf40cda8fe7beca51a5cf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c6d0dfb7489d814b9a0b10d73270165e6842720c317d692f8d49e0308abf8c6773ce929eac14e02d43537f8b308845c94d4cdc31eb8fe81dc437c043e4ee95b9
|
7
|
+
data.tar.gz: 40c022608e5c861990fc710ae220caab8cb3aef5a968b1ba59120d1cb77d2c639dcb6d5aeb16a03fd7eb5736ff8778c2370de26e7c47271ce72aa431d3e4254f
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
## 4.1.2
|
2
|
+
- Fixed issue where Logstash shutdown could cause data loss due to not flushing buffers on close [#52](https://github.com/logstash-plugins/logstash-output-google_bigquery/pull/52)
|
3
|
+
|
1
4
|
## 4.1.1
|
2
5
|
- Fixed inaccuracies in documentation [#46](https://github.com/logstash-plugins/logstash-output-google_bigquery/pull/46)
|
3
6
|
|
@@ -7,6 +7,7 @@ require 'logstash/outputs/bigquery/schema'
|
|
7
7
|
|
8
8
|
require 'time'
|
9
9
|
require 'fileutils'
|
10
|
+
require 'concurrent'
|
10
11
|
|
11
12
|
#
|
12
13
|
# === Summary
|
@@ -181,6 +182,7 @@ class LogStash::Outputs::GoogleBigQuery < LogStash::Outputs::Base
|
|
181
182
|
@schema = LogStash::Outputs::BigQuery::Schema.parse_csv_or_json @csv_schema, @json_schema
|
182
183
|
@bq_client = LogStash::Outputs::BigQuery::StreamingClient.new @json_key_file, @project_id, @logger
|
183
184
|
@batcher = LogStash::Outputs::BigQuery::Batcher.new @batch_size, @batch_size_bytes
|
185
|
+
@stopping = Concurrent::AtomicBoolean.new(false)
|
184
186
|
|
185
187
|
init_batcher_flush_thread
|
186
188
|
end
|
@@ -274,11 +276,24 @@ class LogStash::Outputs::GoogleBigQuery < LogStash::Outputs::Base
|
|
274
276
|
|
275
277
|
def init_batcher_flush_thread
|
276
278
|
@flush_thread = Thread.new do
|
277
|
-
|
278
|
-
|
279
|
+
until stopping?
|
280
|
+
Stud.stoppable_sleep(@flush_interval_secs) { stopping? }
|
279
281
|
|
280
282
|
@batcher.enqueue(nil) { |batch| publish(batch) }
|
281
283
|
end
|
282
284
|
end
|
283
285
|
end
|
286
|
+
|
287
|
+
def stopping?
|
288
|
+
@stopping.value
|
289
|
+
end
|
290
|
+
|
291
|
+
def close
|
292
|
+
@stopping.make_true
|
293
|
+
@flush_thread.wakeup
|
294
|
+
@flush_thread.join
|
295
|
+
# Final flush to publish any events published if a pipeline receives a shutdown signal after flush thread
|
296
|
+
# has begun flushing.
|
297
|
+
@batcher.enqueue(nil) { |batch| publish(batch) }
|
298
|
+
end
|
284
299
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'logstash-output-google_bigquery'
|
3
|
-
s.version = '4.1.
|
3
|
+
s.version = '4.1.2'
|
4
4
|
s.licenses = ['Apache License (2.0)']
|
5
5
|
s.summary = "Writes events to Google BigQuery"
|
6
6
|
s.description = "This gem is a Logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/logstash-plugin install gemname. This gem is not a stand-alone program"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-output-google_bigquery
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.1.
|
4
|
+
version: 4.1.2
|
5
5
|
platform: java
|
6
6
|
authors:
|
7
7
|
- Elastic
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-07-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|