This commit updates the Gradle wrapper validation action to the latest
release and pins it to that version by hash per our company best
practices for GitHub Workflows & Actions.
Cross-cutting refactoring often pings the apm-server team
and we're not really the best placed for reviewing these
changes. The apm-data plugin is structured so the apm-server
team can work on the templates and ingest pipelines without
touching any Java code, so reduce the scope to just the
assets and YAML REST tests.
* x-pack/plugin/apm: introduce x-pack-apm plugin
* Dependency fix and tests
* Restore addition to ESRestTestCase
* Replace IngestPipelineConfig instantiation
* Update DataStreamUpgradeRestIT to expect logs-apm.error
* Adding rollover functionality
* Extend basic rollover funtionality tests
* Start adding integration test
* Hide rollup data streams
* Apm ingest fixes
- Map transaction.duration.us independently of span.duration.us,
fix ingest pipeline. We might consider aliasing later.
- Set event.ingested
- Set processor.event, using constant_keyword where possible
* Fix error.grouping_name script
* Only set event.ingested for traces-apm.sampled
* Enabling APMRolloverIT
* Spotless...
* Assertion change
* Wait a bit before assertBusy
* Adjust template and pipeline names to convention
See https://github.com/elastic/elasticsearch/issues/96267#issuecomment-1662129512
- Index templates have a "@template" suffix
- Component templates are split into settings and mappings,
and have a @settings and @mappings suffix respectively
- Ingest pipelines generally have a @pipeline suffix,
except for one special case where we use @default-pipeline
We no longer have a component template for every data stream, rather we
have reusable component templates where it makes sense. For example, we
now have metrics-apm@settings and metrics-apm@mappings, which are
included by all APM metrics data streams.
We now set both default_pipeline and final_pipeline in the index
templates, preventing users from overriding them completely. The
default pipeline is always apm@default-pipeline, which performs
some rerouting of legacy data, and invokes user-defined @custom
pipelines based on the data_stream.type and data_stream.dataset
fields. The final pipeline just performs built-in processing.
* No need for manual cluster change events anymore
* Fix test
* Lower template priority to 110
Certain index templates installed by Fleet are given
a priority of 150, so lower the priority to avoid
conflicts.
See a18c68f7ac/x-pack/plugins/fleet/server/services/epm/elasticsearch/template/template.ts (L58)
* Add logging
* Remove explicit timeout for rollovers
* Add _meta to component templates too
* Increase template priorities to 140
This goes closer to the Fleet-installed template priorities,
allowing for more builtin templates to be introduced without
affecting APM.
* Test multiple index template upgrades with rollovers
* Enfore correct component template versions
* Rename to x-pack-apm-data, default to disabled
Because there's already an "apm" plugin,
we haven't yet solved all issues with rollovers,
and the templates need some more love.
* Fix checkstyle
* Fix more checkstyle
* Fix even more linting issues
* Adjust test to disabled by default
* remove todo
* Fixing test
* Refactor leftovers
* Fix constant keyword mapping conflict
* Fix after merge
* Comment fixes
* Rename ApmIngestPipelineConfig to YamlIngestPipelineConfig
* Always return a registry
* spotless, what else
* Add rollover integration test to core
* Remove APMRolloverIT
* Refactor in renamed components
---------
Co-authored-by: eyalkoren <41850454+eyalkoren@users.noreply.github.com>
The ES security team currently manually tags the Kibana security team
for reviews on changes to the Kibana system role definition. This PR
aims to automate via codeowners.
This PR updates the pull request template to refer to main instead
of master as well as it updates some URLs.
Signed-off-by: Gabriela Cervantes <gabriela.cervantes.tellez@intel.com>
Currently we use GitHub issue templates containing markdown for each
template. This was an improvement over the single issue template before
that, and there are several bits of information that we ask for, but
filling out the template is cumbersome because it is completely
markdown, and users often leave bits of markdown comments meant for them
to read in the resulting issue.
This commit converts the existing issue templates to use the new github
issue template forms. These are configured through yml, and present an
html form to the user that is customized for each issue type.
The Elasticsearch project has a security policy set on it, which causes
a "Report a security vulnerability" section in the new issue template
with a link to the security policy. This commit removes the older link
to sending an email to the security list, since it is confusing whether
a user should look at the policy (which references the security email)
or directly click the fake "Open" button.
Debugging a CI issue, it's very often helpful to know when a
failure started happening and how often it happens. As such it is
beneficial to add a relevant section in the template in order to
remind the person on test triage to share a link to the build
stats Kibana instance.
This commit splits the singular legacy issue template into individual
categories. The UI is much nicer when creating an issue, and hopefully
will be more clear to users without needing to read through a bunch of
text.
This commit changes the GitHub PR template to refer to supported "OS
and architecture" (rather than use OS) since we only accept PRs for
x86_64 (and not Linux ARM, s390, etc)
This commit adds a field to the GitHub issue template for a list of the
plugins that are installed on the Elasticsearch installation. This is a
common enough ask that it is better to just collect this information up
front.
Relates #19840
This commit adds a note to the GitHub issue template noting that bug
reports on OS that we do not support or feature requests for OS that we
do not support will be closed.
Relates #19322
The CONTRIBUTING.md file can be in the root directory or
in the .github directory and will still be used for
the contributing guidelines on Github.
Moved back to the root directory so that it is more
visible outside Github