logstash-output-elasticsearch 8.2.0-java → 8.2.2-java

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: 71b2fb654d86950996c5fae7c523295a1bc9a9cd
4
- data.tar.gz: 2dd7cc43347238f9bbfa19d27b49368f6c162dc4
3
+ metadata.gz: 100a0be14e669078212f2b1a5f11513814819bfd
4
+ data.tar.gz: 4be944e73c0e885b740f29e211b657dcca3e05f9
5
5
  SHA512:
6
- metadata.gz: a5d577e3f5bc1b3fb4be51eb896f7b5eaa4ecd66a0b4ebb0ff1f37e5d92b555becad7b1ffcf88356deb0a2ec9162ae45aa4526078925057afb22e26ac3760d5d
7
- data.tar.gz: 055311a5f0f991216851381a8f0c0da0480467b84942b64420ecc58d146351a51ab39151dd28a7e89ab12348bdcfde0fa488dfea4769a6cc6ab7c7e015b47d06
6
+ metadata.gz: 73cd4330d52da5f8a7b30843d554ea95b79c242de425fa8ffae55a5e33b541c6841d70b18d418aeb24f4fbb258e82aa6828d161a16a422345d30b95fe206fdcf
7
+ data.tar.gz: d82311c0b9dc47484b50846b5bf05adc0950909b38b5bedfea2b21bf0e464655ff68794efc956864dabb153824f0a1121680fd9de924e63513b43a6fd92dbf7b
@@ -1,3 +1,9 @@
1
+ ### 8.2.2
2
+ - Use `#response_body` instead of `#body` when debugging response from the server #679
3
+
4
+ ## 8.2.1
5
+ - Docs: Add DLQ policy section
6
+
1
7
  ## 8.2.0
2
8
  - Improved Elasticsearch version handling
3
9
  - Improved event error logging when DLQ is disabled in Logstash
@@ -23,7 +23,7 @@ include::{include_path}/plugin_header.asciidoc[]
23
23
  .Compatibility Note
24
24
  [NOTE]
25
25
  ================================================================================
26
- Starting with Elasticsearch 5.3, there's an {ref}modules-http.html[HTTP setting]
26
+ Starting with Elasticsearch 5.3, there's an {ref}/modules-http.html[HTTP setting]
27
27
  called `http.content_type.required`. If this option is set to `true`, and you
28
28
  are using Logstash 2.4 through 5.2, you need to update the Elasticsearch output
29
29
  plugin to version 6.2.5 or higher.
@@ -41,14 +41,17 @@ to upgrade Logstash in lock-step.
41
41
  You can learn more about Elasticsearch at <https://www.elastic.co/products/elasticsearch>
42
42
 
43
43
  ==== Template management for Elasticsearch 5.x
44
+
44
45
  Index template for this version (Logstash 5.0) has been changed to reflect Elasticsearch's mapping changes in version 5.0.
45
46
  Most importantly, the subfield for string multi-fields has changed from `.raw` to `.keyword` to match ES default
46
47
  behavior.
47
48
 
48
- ** Users installing ES 5.x and LS 5.x **
49
+ **Users installing ES 5.x and LS 5.x**
50
+
49
51
  This change will not affect you and you will continue to use the ES defaults.
50
52
 
51
- ** Users upgrading from LS 2.x to LS 5.x with ES 5.x **
53
+ **Users upgrading from LS 2.x to LS 5.x with ES 5.x**
54
+
52
55
  LS will not force upgrade the template, if `logstash` template already exists. This means you will still use
53
56
  `.raw` for sub-fields coming from 2.x. If you choose to use the new template, you will have to reindex your data after
54
57
  the new template is installed.
@@ -63,13 +66,27 @@ request are handled differently than error codes for individual documents.
63
66
  HTTP requests to the bulk API are expected to return a 200 response code. All other response codes are retried indefinitely.
64
67
 
65
68
  The following document errors are handled as follows:
66
- - 400 and 404 errors are sent to the DLQ if enabled. If a DLQ is not enabled a log message will be emitted and the event will be dropped.
67
- - 409 errors (conflict) are logged as a warning and dropped.
69
+
70
+ * 400 and 404 errors are sent to the dead letter queue (DLQ), if enabled. If a DLQ is not enabled, a log message will be emitted, and the event will be dropped. See <<dlq-policy>> for more info.
71
+ * 409 errors (conflict) are logged as a warning and dropped.
68
72
 
69
73
  Note that 409 exceptions are no longer retried. Please set a higher `retry_on_conflict` value if you experience 409 exceptions.
70
74
  It is more performant for Elasticsearch to retry these exceptions than this plugin.
71
75
 
72
- ==== Batch Sizes ====
76
+ [[dlq-policy]]
77
+ ==== DLQ Policy
78
+
79
+ Mapping (404) errors from Elasticsearch can lead to data loss. Unfortunately
80
+ mapping errors cannot be handled without human intervention and without looking
81
+ at the field that caused the mapping mismatch. If the DLQ is enabled, the
82
+ original events causing the mapping errors are stored in a file that can be
83
+ processed at a later time. Often times, the offending field can be removed and
84
+ re-indexed to Elasticsearch. If the DLQ is not enabled, and a mapping error
85
+ happens, the problem is logged as a warning, and the event is dropped. See
86
+ <<dead-letter-queues>> for more information about processing events in the DLQ.
87
+
88
+ ==== Batch Sizes
89
+
73
90
  This plugin attempts to send batches of events as a single request. However, if
74
91
  a request exceeds 20MB we will break it up until multiple batch requests. If a single document exceeds 20MB it will be sent as a single request.
75
92
 
@@ -248,7 +248,7 @@ module LogStash; module Outputs; class ElasticSearch;
248
248
  retry unless @stopping.true?
249
249
  rescue ::LogStash::Outputs::ElasticSearch::HttpClient::Pool::BadResponseCodeError => e
250
250
  log_hash = {:code => e.response_code, :url => e.url.sanitized.to_s}
251
- log_hash[:body] = e.body if @logger.debug? # Generally this is too verbose
251
+ log_hash[:body] = e.response_body if @logger.debug? # Generally this is too verbose
252
252
  message = "Encountered a retryable error. Will Retry with exponential backoff "
253
253
 
254
254
  # We treat 429s as a special case because these really aren't errors, but
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'logstash-output-elasticsearch'
3
- s.version = '8.2.0'
3
+ s.version = '8.2.2'
4
4
  s.licenses = ['apache-2.0']
5
5
  s.summary = "Logstash Output to Elasticsearch"
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,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-output-elasticsearch
3
3
  version: !ruby/object:Gem::Version
4
- version: 8.2.0
4
+ version: 8.2.2
5
5
  platform: java
6
6
  authors:
7
7
  - Elastic