Breaking Changes
editBreaking Changes
editWe strive to maintain backward compatibility between minor versions (6.x to 6.y, for example) so that you can upgrade without changing any configuration files. Breaking changes are usually introduced only between major versions (such as 5.x to 6.y). On occasion, we are forced to break compatibility within a given major release to ensure correctness of operation.
This section covers the changes that you need to be aware of when migrating to Logstash 6.0.0 and later.
Migrating directly between non-consecutive major versions (1.x to 6.x) is not recommended.
See these topics for a description of breaking changes:
See also Release Notes.
Breaking change across PQ versions prior to Logstash 6.3.0
editIf you are upgrading from Logstash 6.2.x or any earlier version (including 5.x) and have the persistent queue enabled, we strongly recommend that you drain or delete the persistent queue before you upgrade. See Upgrading Persistent Queue from Logstash 6.2.x and Earlier for information and instructions.
We are working to resolve issues with data incompatibilities so that additional steps won’t be required for future upgrades.
Breaking changes in 6.0
editHere are the breaking changes for 6.0.
Changes in Logstash Core
editThese changes can impact any instance of Logstash and are plugin agnostic, but only if you are using the features that are impacted.
Application Settings
edit-
The setting
config.reload.interval
has been changed to use time value strings such as5m
,10s
etc. Previously, users had to convert this to a millisecond time value themselves.
RPM/Deb package changes
edit-
For
rpm
anddeb
release artifacts, config files that match the*.conf
glob pattern must be in the conf.d folder, or the files will not be loaded.
Command Line Interface behavior
edit-
The
-e
and-f
CLI options are now mutually exclusive. This also applies to the corresponding long form optionsconfig.string
andpath.config
. This means any configurations provided via-e
will no longer be appended to the configurations provided via-f
. -
Configurations provided with
-f
orconfig.path
will not be appended withstdin
input andstdout
output automatically.
Plugin Changes
editElasticsearch output changes
edit-
The default
document_type
has changed fromlogs
todoc
for consistency with Beats. Furthermore, users are advised that Elasticsearch 6.0 deprecates doctypes, and 7.0 will remove them. See Removal of Mapping Types for more info. -
The options
flush_size
andidle_flush_time
are now obsolete. - Please note that the _all field is deprecated in 6.0. The new mapping template has been updated to reflect that. If you are using a custom mapping template you may need to update it to reflect that.
Kafka input changes
edit-
Upgraded Kafka client support to v0.11.0.0, which only supports Kafka brokers v0.10.x or later.
- Please refer to Kafka input plugin documentation for information about Kafka compatibility with Logstash.
-
Decorated fields are now nested under
@metadata
to avoid mapping conflicts with Beats.-
See the
Metadata Fields
section in the Kafka input plugin documentation for more details.
-
See the
-
The
ssl
option is now obsolete.
Kafka output changes
edit-
Upgraded Kafka client support to v0.11.0.0, which only supports Kafka brokers v0.10.x or later.
- Please refer to Kafka output plugin documentation for information about Kafka compatibility with Logstash.
-
The options
block_on_buffer_full
,ssl
, andtimeout_ms
are now obsolete.
Beats input changes
edit-
Logstash will no longer start when Multiline codec plugin is used with the Beats input plugin.
- It is recommended to use the multiline support in Filebeat as a replacement - see configuration options available in Filebeat for details.
-
The options
congestion_threshold
andtarget_field_for_codec
are now obsolete.
List of plugins bundled with Logstash
editThe following plugins were removed from the 6.0 default bundle based on usage data. You can still install these plugins manually:
- logstash-codec-oldlogstashjson
- logstash-input-couchdb_changes
- logstash-input-irc
- logstash-input-log4j
- logstash-input-lumberjack
- logstash-filter-uuid
- logstash-output-xmpp
- logstash-output-irc
- logstash-output-statsd