logstash-output-dynatrace 0.3.1 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 06c22415ca3c16b7214c6aca478edd757db1302dff08fd706e80402bd3627392
4
- data.tar.gz: af603917cd20c72d12d98add8409e1d171e7ca2edc632d42378f8a54f5a018a5
3
+ metadata.gz: 657b814816f85318e7968d096c9d5c5de194002f39a1bdb3971442006001af8e
4
+ data.tar.gz: 7a94f714d34078f792a648f3c468518099601e1c0e23614461aa0ed6a97dc50d
5
5
  SHA512:
6
- metadata.gz: 0c5b60e14c175f9e7937c79131f872768034e191df4c12e9c58b88abcb190208148fb77d76c2d93e42aff8a2599e1b89621f165740910b0ee0561273f529fcc4
7
- data.tar.gz: ad04bc45337935f619619bef6765dee1335285fc7fa705147bfdce7888f88158c829f62ad1a84f4a26c729710292143ffd8efa217954ce5c1bc9f4c458a64abe
6
+ metadata.gz: 67579448d2e0034ba41b01cc5cdf5d6365d02e34c67c5b9698dc1af3638c885301610373fc774afba4c5b2a204aa42920d402a340520198057036c7362e00515
7
+ data.tar.gz: a6ee38c6ba636b731e343e6e63c2d190a9d8b90d9e241f435af404e39f9b25e3b043ffa79ae35f87cb5f9be8013929afdaa819570e9b6257e04e23cbcc7c1281
data/CHANGELOG.md CHANGED
@@ -1,12 +1,25 @@
1
+ ## 0.4.0
2
+
3
+ - Add` OpenSSL::SSL::SSLError` to the list of retried exception
4
+ - Change concurrency mode to `:single`
5
+
6
+ ## 0.3.2
7
+
8
+ - Add `Net::OpenTimeout` to the list of retried exceptions
9
+
1
10
  ## 0.3.1
2
- - Log and re-raise unknown errors
3
- - Use [password](https://www.elastic.co/guide/en/logstash/current/configuration-file-structure.html#password) type for `api_key` configuration
11
+
12
+ - Log and re-raise unknown errors
13
+ - Use [password](https://www.elastic.co/guide/en/logstash/current/configuration-file-structure.html#password) type for `api_key` configuration
4
14
 
5
15
  ## 0.3.0
6
- - Log response bodies on client errors
16
+
17
+ - Log response bodies on client errors
7
18
 
8
19
  ## 0.2.0
9
- - Add retries with exponential backoff (#8)
20
+
21
+ - Add retries with exponential backoff (#8)
10
22
 
11
23
  ## 0.1.0
12
- - Initial release
24
+
25
+ - Initial release
@@ -17,9 +17,10 @@
17
17
  require 'logstash/namespace'
18
18
  require 'logstash/outputs/base'
19
19
  require 'logstash/json'
20
+ require 'openssl'
20
21
 
21
22
  MAX_RETRIES = 5
22
- PLUGIN_VERSION = '0.3.1'
23
+ PLUGIN_VERSION = '0.4.0'
23
24
 
24
25
  module LogStash
25
26
  module Outputs
@@ -30,6 +31,8 @@ module LogStash
30
31
  class Dynatrace < LogStash::Outputs::Base
31
32
  config_name 'dynatrace'
32
33
 
34
+ concurrency :single
35
+
33
36
  # The full URL of the Dynatrace log ingestion endpoint:
34
37
  # - on SaaS: https://{your-environment-id}.live.dynatrace.com/api/v2/logs/ingest
35
38
  # - on Managed: https://{your-domain}/e/{your-environment-id}/api/v2/logs/ingest
@@ -93,8 +96,10 @@ module LogStash
93
96
 
94
97
  raise RetryableError.new "code #{response.code}" if retryable(response)
95
98
 
96
- rescue Net::HTTPBadResponse, RetryableError => e
97
- # indicates a protocol error
99
+ rescue Net::OpenTimeout, Net::HTTPBadResponse, OpenSSL::SSL::SSLError, RetryableError => e
100
+ # Net::OpenTimeout indicates a connection could not be established within the timeout period
101
+ # Net::HTTPBadResponse indicates a protocol error
102
+ # OpenSSL::SSL::SSLErrorWaitReadable indicates an error establishing the ssl connection
98
103
  if retries < MAX_RETRIES
99
104
  sleep_seconds = 2 ** retries
100
105
  @logger.warn("Failed to contact dynatrace: #{e.message}. Trying again after #{sleep_seconds} seconds.")
data/version.rb CHANGED
@@ -16,5 +16,5 @@
16
16
 
17
17
  module DynatraceConstants
18
18
  # Also required to change the version in lib/logstash/outputs/dynatrace.rb
19
- VERSION = '0.3.1'
19
+ VERSION = '0.4.0'
20
20
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-output-dynatrace
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dynatrace Open Source Engineering
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-07 00:00:00.000000000 Z
11
+ date: 2023-07-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: logstash-codec-json