63 lines
4.6 KiB
Text
63 lines
4.6 KiB
Text
|
// Use these for links to issue and pulls. Note issues and pulls redirect one to
|
||
|
// each other on Github, so don't worry too much on using the right prefix.
|
||
|
:issue: https://github.com/elastic/beats/issues/
|
||
|
:pull: https://github.com/elastic/beats/pull/
|
||
|
|
||
|
This changelog is intended for community Beat developers. It covers the major
|
||
|
breaking changes to the internal APIs in the official Beats and changes related
|
||
|
to developing a Beat like code generators or `fields.yml`. Only the major
|
||
|
changes will be covered in this changelog that are expected to affect community
|
||
|
developers. Each breaking change added here should have an explanation on how
|
||
|
other Beats should be migrated.
|
||
|
|
||
|
Note: This changelog was only started after the 6.3 release.
|
||
|
|
||
|
=== Beats version HEAD
|
||
|
https://github.com/elastic/beats/compare/v6.3.0..master[Check the HEAD diff]
|
||
|
|
||
|
The list below covers the major changes between 6.3.0 and master only.
|
||
|
|
||
|
==== Breaking changes
|
||
|
|
||
|
- The beat.Pipeline is now passed to cfgfile.RunnerFactory. Beats using libbeat for module reloading or autodiscovery need to be adapted. {pull}7018[7017]
|
||
|
- Moving of TLS helper functions and structs from `output/tls` to `tlscommon`. {pull}7054[7054]
|
||
|
- Port fields.yml collector to Golang {pull}6911[6911]
|
||
|
- Dashboards under _meta/kibana are expected to be decoded. See https://github.com/elastic/beats/pull/7224 for a conversion script. {pull}7265[7265]
|
||
|
- Constructor `(github.com/elastic/beats/libbeat/output/codec/json).New` expects a new `escapeHTML` parameter. {pull}7445[7445]
|
||
|
- Packaging has been refactored and updates are required. See the PR for migration details. {pull}7388[7388]
|
||
|
- `make fields` has been modified to use Mage (https://magefile.org/) in an effort to make
|
||
|
the building a Beat more cross-platform friendly (e.g. Windows). This requires that your Beat
|
||
|
has a magefile.go with a fields target. The `FIELDS_FILE_PATH` make variable is no longer
|
||
|
used because the value is specified in magefile.go. {pull}7670[7670]
|
||
|
- Renamed `-beat-name` CLI option used in `kibana_index_pattern.go` to `-beat` for consistency with other scripts in `dev-tools/cmd`. {pull}8615[8615]
|
||
|
|
||
|
==== Bugfixes
|
||
|
|
||
|
- Fix permissions of generated Filebeat filesets. {pull}7140[7140]
|
||
|
- Collect fields from _meta/fields.yml too. {pull}8397[8397]
|
||
|
- Fix issue on asset generation that could lead to different results in Windows. {pull}8464[8464]
|
||
|
|
||
|
==== Added
|
||
|
|
||
|
- Libbeat provides a global registry for beats developer that allow to register and retrieve plugin. {pull}7392[7392]
|
||
|
- Added more options to control required and optional fields in schema.Apply(), error returned is a plain nil if no error happened {pull}7335[7335]
|
||
|
- Packaging on MacOS now produces a .dmg file containing an installer (.pkg) and uninstaller for the Beat. {pull}7481[7481]
|
||
|
- Added mage targets `goTestUnit` and `goTestIntegration` for executing
|
||
|
'go test'. This captures the log to a file, summarizes the result, produces a
|
||
|
coverage profile (.cov), and produces an HTML coverage report. See
|
||
|
`mage -h goTestUnit`. {pull}7766[7766]
|
||
|
- Beats packaging now build non-oss binaries from code located in the x-pack folder. {issue}7783[7783]
|
||
|
- New function `AddTagsWithKey` is added, so `common.MapStr` can be enriched with tags with an arbitrary key. {pull}7991[7991]
|
||
|
- Libbeat provides a new function `cmd.GenRootCmdWithSettings` that should be preferred over deprecated functions
|
||
|
`cmd.GenRootCmd`, `cmd.GenRootCmdWithRunFlags`, and `cmd.GenRootCmdWithIndexPrefixWithRunFlags`. {pull}7850[7850]
|
||
|
- Set current year in generator templates. {pull}8396[8396]
|
||
|
- You can now override default settings of libbeat by using instance.Settings. {pull}8449[8449]
|
||
|
- Add `-space-id` option to `export_dashboards.go` script to support Kibana Spaces {pull}7942[7942]
|
||
|
- Add `-name` option to `asset.go` script to explicitly name the asset rather than using its filename. {pull}8693[8693]
|
||
|
- Add `-out` option to `kibana_index_pattern.go` to control the output dir to make it possible to write the generated output to `build/kibana` instead of `_meta/kibana.generated` (but the output dir remains unchanged at this point). {pull}8615[8615]
|
||
|
- Add `module_fields.go` for generated `fields.go` files for modules. {pull}8615[8615]
|
||
|
- Add `mage.GenerateModuleReferenceConfig` for generating reference config files that include configuration sections from the module directory. {pull}8615[8615]
|
||
|
- Add `mage.GenerateFieldsGo` for generating fields.go files. {pull}8615[8615]
|
||
|
- Add `mage.KibanaDashboards` for collecting Kibana dashboards and generating index patterns. {pull}8615[8615]
|
||
|
- Allow to disable config resolver using the `Settings.DisableConfigResolver` field when initializing libbeat. {pull}8769[8769]
|