IMPORTANT: No additional bug fixes or documentation updates
will be released for this version. For the latest information, see the
current release documentation.
Beats version 5.0.0
editBeats version 5.0.0
editThe list below covers changes between 1.x to 5.0.0 releases.
Breaking changes
editAffecting all Beats
-
Rename the
filters
section toprocessors
. 1944 - Require braces for environment variable expansion in config files 1304
-
On DEB/RPM installations, the binary files are now found under
/usr/share/{{beat_name}}/bin
, not in/usr/bin
. 1385 - The logs are written by default to self rotating files, instead of syslog. 1371
-
Remove deprecated
host
option from elasticsearch, logstash and redis outputs. 1474 -
All configuration settings under
shipper:
are moved to be top level configuration settings. I.e.shipper.name:
becomesname:
in the configuration file. 1570 -
The
topology_expire
option of the Elasticsearch output was removed. 1907 - The Elasticsearch template is now loaded by default. 1993
-
The Redis output
index
setting is renamed tokey
.index
still works but it’s deprecated. 2077 -
The undocumented file output
index
setting was removed. Usefilename
instead. 2077 - Change Elasticsearch output index configuration to be based on format strings. If index has been configured, no date will be appended anymore to the index name. 2119
-
If the path specified by the
-c
flag is not absolute and-path.config
is not specified, it is considered relative to the current working directory. 2245 -
Rename
tls
configurations section tossl
. 2330 -
Rename
certificate_key
configuration tokey
. 2330 -
Replace
tls.insecure
withssl.verification_mode
setting. 2330 -
Replace
tls.min/max_version
withssl.supported_protocols
setting requiring full protocol name. 2330 - A dynamic mapping rule is added to the default Elasticsearch template to treat strings as keywords by default. 2688
Filebeat
-
Scalar values in used in the
fields
configuration setting are no longer automatically converted to strings. 1092 - Count field was removed from event as not used in filebeat 778
-
Default location for the registry file was changed to be
data/registry
from the binary directory, rather than.filebeat
in the current working directory. This affects installations for zip/tar.gz/source, the location for DEB and RPM packages stays the same. 1373 - The state for files which fall under ignore_older is not stored anymore. This has the consequence, that if a file which fell under ignore_older is updated, the whole file will be crawled.
-
Ignore symlinks by default, but they can be enabled with
symlinks
config 1686 2478 -
Set
close_inactive
default to 5 minutes (was 1 hour before) -
Set
clean_removed
andclose_removed
to true by default
Packetbeat
-
Rename output fields in the dns package. Former flag
recursion_allowed
becomesrecursion_available
. 803 Former SOA fieldttl
becomesminimum
. 803 - The fully qualified domain names which are part of output fields values of the dns package now terminate with a dot. 803
-
Remove the
count
field from the exported event 1210 - Configuration of redis topology support changed. 1353
- Move all Packetbeat configuration options under the packetbeat namespace 1417
-
Set
enabled
` inpacketbeat.protocols.icmp
configuration totrue
by default. 1988 -
Group HTTP fields under
http.request
andhttp.response
2167 -
Export
http.request.body
andhttp.response.body
when configured underinclude_body_for
2167 -
Move
ignore_outgoing
config topacketbeat.ignore_outgoing
2393
Winlogbeat
Bugfixes
editAffecting all Beats
- Logstash output will not retry events that are not JSON-encodable 927
- Drain response buffers when pipelining is used by Redis output. 1353
- Unterminated environment variable expressions in config files will now cause an error 1389
- Fix issue with the automatic template loading when Elasticsearch is not available on Beat start. 1321
-
Fix bug affecting
-cpuprofile
,-memprofile
, and-httpprof
CLI flags 1415 - Fix race when multiple outputs access the same event with logstash output manipulating event 1410 1428
- Seed random number generator using crypto.rand package. https://github.com/elastic/beats/pull/1503{1503]
-
Fix beats hanging in
-configtest
1213 - Reset backoff factor on partial ACK. 1803
- Fix beats load balancer deadlock if max_retries: -1 or publish_async is enabled in filebeat. 1829
- Fix logstash output with pipelining mode enabled not reconnecting. 1876
- Empty configuration sections become merge-able with variables containing full path. 1900
- Fix error message about required fields missing not printing the missing field name. 1900
-
Fix sync publisher
PublishEvents
return value if client is closed concurrently. 2046 - Fix Logstash output handles error twice when asynchronous sending fails. 2441
- Fix Elasticsearch structured error response parsing error. 2229
- Fixed the run script to allow the overriding of the configuration file. 2171
- Fix logstash output crash if no hosts are configured. 2325
- Fix beats failing to start due to invalid duplicate key error in configuration file. 2521
- Fix panic on non writable logging directory. 2571
- Fix ignoring all fields from drop_fields in case the first field is unknown. 2685
- Fix dynamic configuration int/uint` to float type conversion. 2698
- Fix primitive types conversion if values are read from environment variables. 2698
Filebeat
- Stop filebeat if started without any prospectors defined or empty prospectors 644 647
- Improve shutdown of crawler and prospector to wait for clean completion 720
-
Omit
fields
from Filebeat events when null 899 - Improvements in registrar dealing with file rotation. 1281
-
Multiline reader normalizing newline to use
\n
. 1552 - Fix potential data loss between Filebeat restarts, reporting unpublished lines as published. 2041
- Fix open file handler issue. 2028 2020
- Fix async publisher sending empty events 2455
- Fix potential issue with multiple harvester per file on large file numbers or slow output 2541
- Fix input buffer on encoding problem. 2416
-
Fix issue when
clean_removed
andclean_inactive
were used together that states were not directly removed from the registry. - Fix issue where upgrading a 1.x registry file resulted in duplicate state entries. 2792
Packetbeat
- Create a proper BPF filter when ICMP is the only enabled protocol 757
- Check column length in pgsql parser. 565
- Harden pgsql parser. 565
- Add missing nil-check to memcached GapInStream handler. 1162
- Fix NFSv4 Operation returning the first found first-class operation available in compound requests. 1821
- Fix TCP overlapping segments not being handled correctly. 1898
- Fix mapping for some Packetbeat flow metrics that were not marked as being longs. 2177
- Fix handling of messages larger than the maximum message size (10MB). 2470
-
Fix the
bpf_filter
setting. 2660 - Fix compile issues for OpenBSD. 1347
Winlogbeat
- Fix panic when reading messages larger than 32K characters on Windows XP and 2003. 1498
- Fix panic that occurs when reading a large events on Windows Vista and newer. 1499
- Adding missing argument to the "Stop processing" log message. 1590
- Fix issue with rendering forwarded event log records. 1891
- Fix potential data loss between Winlogbeat restarts, reporting unpublished lines as published. 2041
- Fix corrupt registry file that occurs on power loss by disabling file write caching. 2313
Added
editAffecting all Beats
- Update to Go 1.7. 2306
- Add option to Elasticsearch output to pass http parameters in index operations 805
- Improve Logstash and Elasticsearch backoff behavior. 927
- Add Kafka output. 942 2188 2190 2284
- Add config file option to configure GOMAXPROCS. 969
- Improve shutdown handling in libbeat. 1075
- Log total non-zero internal metrics on shutdown. 2349
-
Add
fields
andfields_under_root
options under theshipper
configuration 1092 - Add the ability to use a SOCKS5 proxy with the Logstash output 823
-
The
-configtest
flag will now print "Config OK" to stdout on success 1249 - Add support for TLS to Redis output. 1353
- Add SOCKS5 proxy support to Redis output. 1353
- Failover and load balancing support in Redis output. 1353
- Multiple-worker per host support for Redis output. 1353
-
Added ability to escape
${x}
in config files to avoid environment variable expansion 1389 - Configuration options and CLI flags for setting the home, data and config paths. 1373
- Configuration options and CLI flags for setting the default logs path. 1437
- Add Elasticsearch template files compatible with Elasticsearch 2.x. 1501
- Load the mapping template depending on the Elasticsearch version. 1993
- Add conditions to processors. 1623
-
Enhance
contains
condition to work on fields that are arrays of strings. 2237 - Add OR/AND/NOT to the condition associated with the processors. 1983
- Improve error message if compiling regular expression from config files fails. 1900
- Compression support in the Elasticsearch output. 1835
- Periodically log internal metrics. 1955
-
Add
enabled
setting to all output modules. 1987 -
Command line flag
-c
can be used multiple times. 1985 -
Add
-E
CLI flag for overwriting single config options via command line. 1986 - Check stdout being available when console output is configured. 2035
- Add script to generate the Kibana index-pattern from fields.yml. 2122
- Enhance Redis output key selection based on format string. 2169
-
Configurable Redis
keys
using filters and format strings. 2169 -
Lookup the configuration file relative to the
-path.config
CLI flag. 2245 -
Re-write
import_dashboards
script in Golang. 2155 -
Add support for encrypted private key files by introducing
ssl.key_passphrase
setting. 2330 -
Add
beat.version
fields to all events. - Make sure Beats sent always float values when they are defined as float by sending 5.00000 instead of 5. 2627
Filebeat
- Add the ability to set a list of tags for each prospector 1092
- Add JSON decoding support 1143
- The registry format was changed to an array instead of dict. The migration to the new format will happen automatically at the first startup. 1703
-
Introduce
close_removed
andclose_renamed
harvester options. 1600 -
Introduce
close_eof
harvester option. 1600 -
Add
clean_removed
andclean_inactive
config option. 1600 -
Introduce
close_timeout
harvester options 1926 - Strip BOM from first message in case of BOM files 2351
-
Add
harvester_limit
option 2417
Packetbeat
- Change the DNS library used throughout the dns package to github.com/miekg/dns. 803
- Add support for NFS v3 and v4. 1231
- Add support for EDNS and DNSSEC. 1292
-
Add
enabled
setting to Packetbeat protocols. 1988 -
Add
enabled
setting to Packetbeat network flows configuration. 1988 - Add Cassandra protocol analyzer to Packetbeat. 1959
- Match connections with IPv6 addresses to processes 2254
-
Add IP address to
-devices
command output 2327 - Add configuration option for the maximum message size. Used to be hard-coded to 10 MB. 2470
Metricbeat
- First public release, containing the following modules: system, Apache, MySQL, PostgreSQL, Nginx, Redis, MongoDB, and Zookeeper. Metricbeat is replacing Topbeat in 5.0, and its default behaviour is to export system statistics like CPU usage, memory usage, Disk IO similar with what Topbeat 1.x is doing.
-
Add
pgid
field to process information. https://github.com/elastic/beats/pull/ 2021[2021] -
Use the new
scaled_float
Elasticsearch type for the percentage values. 2156 -
Improve mapping by converting
half_float
toscaled_float
and integers to long. 2430 -
Add experimental
cgroup
metrics to the system/process MetricSet. 2184 -
Add experimental
haproxy
module. 2384
Winlogbeat
- Add caching of event metadata handles and the system render context for the wineventlog API 888
- Improve config validation by checking for unknown top-level YAML keys. 1100
-
Add the ability to set
tags
,fields
, andfields_under_root
as options for each event log 1092 -
Add additional data to the events published by Winlogbeat. The new fields are
activity_id
,event_data
,keywords
,opcode
,process_id
,provider_guid
,related_activity_id
,task
,thread_id
,user_data
, andversion
. 1053 -
Add
event_id
,level
, andprovider
configuration options for filtering events 1218 -
Add
include_xml
configuration option for including the raw XML with the event 1218
Deprecated
editAffecting all Beats
- The support for doing GeoIP lookups is deprecated and will be removed in version 6.0. 1601
-
Topology map is deprecated. This applies to the settings:
refresh_topology_freq
,topology_expire
,save_topology
,host_topology
,password_topology
,db_topology
. -
Setting
port
has been deprecated in Redis and Logstash outputs. 2620
Filebeat