-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Meta] Switch to the new Elasticsearch client #83910
Comments
Uptime is already migrated #82003 |
The ml plugin was migrated for 7.10 - #74965 |
Sorry, still kind of a new at Kibana - our plugin ( |
@constancecchen if the plugin is not directly using the legacy client, you can set the migration status to green. |
|
Howdy all. I've updated the audit list above with all the plugins that I could find that were still using the legacy client. It's important that we get these migrations done by 7.15 FF so the Core team has enough time to remove the legacy client before 8.0. Most of the plugins remaining only have a handful of usages, so migration should be pretty straightforward. The only areas I want to make sure we don't get behind on are:
All teams that still have usages to migrate: @elastic/kibana-app-services @elastic/kibana-presentation @elastic/kibana-operations @elastic/kibana-gis @elastic/stack-monitoring-ui @elastic/logs-metrics-ui @elastic/es-ui @elastic/endpoint-app-team @elastic/logstash Please let the Core team know if you do not anticipate having bandwidth to complete this by 7.15 FF so that we can come up with a plan B. Thanks all for your help! |
I've also added lists of functional tests for each team that are still using the legacy client (any usage of Teams that have migrated their plugins to use the new ES client, but have not yet updated their functional tests:
Other teams with functional tests were pinged in my previous comment so I'm not pinging y'all again, but please do include updating these usages as part of your efforts to migrate your plugins. Please see the lists above for each team. |
Thanks for the reminder @joshdover! ES UI is tracking the work for our team via #73973. |
ACK, I think I just didn't realize that |
APM UI updated in #95303. |
@YulNaumenko looks like a few places are still using the legacy Elasticsearch client. If you have a PR in the works, great, otherwise let's create a follow-up issue for the remaining items. |
With the merge of #99549, Canvas is now using the new ES client |
We're almost there! We only got 3 plugins remaining: @elastic/kibana-stack-management
@elastic/endpoint-app-team
|
The |
Just submitted the last Stack Management PR (#105863) for review. Addresses Index Management and API integration tests for our plugins. Expect to merge and ship it with 7.15. |
… security_solution plugins (#106130) ## Summary Addressees #83910 by removing the elastic legacy client from: * `lists` plugin * `security_solution` plugin * `kbn-securitysolution-es-utils` package Removes found dead code in `security_solution` plugin: * `server/lib/configuration/inmemory_configuration_adapter.ts` * `server/lib/detection_engine/privileges/read_privileges.ts` * `server/lib/configuration/index.ts` * `server/lib/configuration/adapter_types.ts` * `server/lib/compose/kibana.ts` * `server/lib/ecs_fields/extend_map.test.ts` * `server/lib/ecs_fields/extend_map.ts` * `server/lib/index_fields/elasticsearch_adapter.ts` * `server/lib/index_fields/index.ts` * `server/lib/index_fields/mock.ts` * `server/lib/index_fields/types.ts` * `server/lib/source_status/elasticsearch_adapter.ts` * `server/lib/source_status/index.ts` * `server/lib/source_status/query.dsl.ts` * `server/lib/source_status/types.ts` * `server/lib/sources/configuration.test.ts` * `server/lib/sources/configuration.ts` * `server/lib/sources/index.ts` * `server/lib/sources/types.ts` Removes dead code in `lists` plugin: * `server/schemas/common/get_call_cluster.mock.ts` * `server/lib/ecs_fields/index.ts` * `server/lib/framework/kibana_framework_adapter.ts` Removes dead types from `security_solution` plugin: * `server/lib/framework/types.ts` * `server/lib/types.ts` Removes dead functions from `security_solution` plugin: * `server/utils/build_query/calculate_timeseries_interval.ts` * `server/utils/runtime_types.ts` ### What to check as a reviewer * Ensure that there is no left over words of `legacy` such as `legacy.something` * Ensure there are no more `callAsCurrentUser` since that is all dead and gone * Ensure anywhere you see `esClient.someThing` it returns the `.body` at the end or destructors it as in `{ body } = esClient.someThing` ### Risk Matrix | Risk | Probability | Severity | Mitigation/Notes | |---------------------------|-------------|----------|-------------------------| | Telemetry might stop working or have invalid values. | Med | High | We will have to manually test telemetry. Pinged people from telemetry for a code review | | An REST route returns invalid values. | Med | High | e2e tests caught some of these already. The rest of the code was re-checked by hand | | Deleted function/code might actually be still in use somewhere. | Low | High | e2e and unit tests should catch any of this. | ### Checklist Delete any items that are not applicable to this PR. - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios
… security_solution plugins (elastic#106130) ## Summary Addressees elastic#83910 by removing the elastic legacy client from: * `lists` plugin * `security_solution` plugin * `kbn-securitysolution-es-utils` package Removes found dead code in `security_solution` plugin: * `server/lib/configuration/inmemory_configuration_adapter.ts` * `server/lib/detection_engine/privileges/read_privileges.ts` * `server/lib/configuration/index.ts` * `server/lib/configuration/adapter_types.ts` * `server/lib/compose/kibana.ts` * `server/lib/ecs_fields/extend_map.test.ts` * `server/lib/ecs_fields/extend_map.ts` * `server/lib/index_fields/elasticsearch_adapter.ts` * `server/lib/index_fields/index.ts` * `server/lib/index_fields/mock.ts` * `server/lib/index_fields/types.ts` * `server/lib/source_status/elasticsearch_adapter.ts` * `server/lib/source_status/index.ts` * `server/lib/source_status/query.dsl.ts` * `server/lib/source_status/types.ts` * `server/lib/sources/configuration.test.ts` * `server/lib/sources/configuration.ts` * `server/lib/sources/index.ts` * `server/lib/sources/types.ts` Removes dead code in `lists` plugin: * `server/schemas/common/get_call_cluster.mock.ts` * `server/lib/ecs_fields/index.ts` * `server/lib/framework/kibana_framework_adapter.ts` Removes dead types from `security_solution` plugin: * `server/lib/framework/types.ts` * `server/lib/types.ts` Removes dead functions from `security_solution` plugin: * `server/utils/build_query/calculate_timeseries_interval.ts` * `server/utils/runtime_types.ts` ### What to check as a reviewer * Ensure that there is no left over words of `legacy` such as `legacy.something` * Ensure there are no more `callAsCurrentUser` since that is all dead and gone * Ensure anywhere you see `esClient.someThing` it returns the `.body` at the end or destructors it as in `{ body } = esClient.someThing` ### Risk Matrix | Risk | Probability | Severity | Mitigation/Notes | |---------------------------|-------------|----------|-------------------------| | Telemetry might stop working or have invalid values. | Med | High | We will have to manually test telemetry. Pinged people from telemetry for a code review | | An REST route returns invalid values. | Med | High | e2e tests caught some of these already. The rest of the code was re-checked by hand | | Deleted function/code might actually be still in use somewhere. | Low | High | e2e and unit tests should catch any of this. | ### Checklist Delete any items that are not applicable to this PR. - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios
… security_solution plugins (#106130) (#106342) ## Summary Addressees #83910 by removing the elastic legacy client from: * `lists` plugin * `security_solution` plugin * `kbn-securitysolution-es-utils` package Removes found dead code in `security_solution` plugin: * `server/lib/configuration/inmemory_configuration_adapter.ts` * `server/lib/detection_engine/privileges/read_privileges.ts` * `server/lib/configuration/index.ts` * `server/lib/configuration/adapter_types.ts` * `server/lib/compose/kibana.ts` * `server/lib/ecs_fields/extend_map.test.ts` * `server/lib/ecs_fields/extend_map.ts` * `server/lib/index_fields/elasticsearch_adapter.ts` * `server/lib/index_fields/index.ts` * `server/lib/index_fields/mock.ts` * `server/lib/index_fields/types.ts` * `server/lib/source_status/elasticsearch_adapter.ts` * `server/lib/source_status/index.ts` * `server/lib/source_status/query.dsl.ts` * `server/lib/source_status/types.ts` * `server/lib/sources/configuration.test.ts` * `server/lib/sources/configuration.ts` * `server/lib/sources/index.ts` * `server/lib/sources/types.ts` Removes dead code in `lists` plugin: * `server/schemas/common/get_call_cluster.mock.ts` * `server/lib/ecs_fields/index.ts` * `server/lib/framework/kibana_framework_adapter.ts` Removes dead types from `security_solution` plugin: * `server/lib/framework/types.ts` * `server/lib/types.ts` Removes dead functions from `security_solution` plugin: * `server/utils/build_query/calculate_timeseries_interval.ts` * `server/utils/runtime_types.ts` ### What to check as a reviewer * Ensure that there is no left over words of `legacy` such as `legacy.something` * Ensure there are no more `callAsCurrentUser` since that is all dead and gone * Ensure anywhere you see `esClient.someThing` it returns the `.body` at the end or destructors it as in `{ body } = esClient.someThing` ### Risk Matrix | Risk | Probability | Severity | Mitigation/Notes | |---------------------------|-------------|----------|-------------------------| | Telemetry might stop working or have invalid values. | Med | High | We will have to manually test telemetry. Pinged people from telemetry for a code review | | An REST route returns invalid values. | Med | High | e2e tests caught some of these already. The rest of the code was re-checked by hand | | Deleted function/code might actually be still in use somewhere. | Low | High | e2e and unit tests should catch any of this. | ### Checklist Delete any items that are not applicable to this PR. - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios Co-authored-by: Frank Hassanabad <frank.hassanabad@elastic.co>
functional tests with
|
PR for last alerting test: #107152 |
A few of the type imports were non-trivial in our plugins, so I tackled these in a separate PR, which removes those legacy imports for both list and security_solution. Hopefully that doesn't step on anyone's toes 😬 : #107226 |
All Stack Management code has been migrated. |
@mshustov |
I'm sure we are done with this task. I'm removing the client in #106885. Many thanks to everyone involved, that's been a long journey! |
From the v7.10, Kibana core provides a new Elasticsearch client as a substation of the legacy one.
All the plugins are expected to migrate to the new Elasticsearch client before v8.0, where the legacy client support will be removed from the Kibana Core.
Migration path and breaking changes are available in the Migration guide
List of all plugins grouped by owners:
Important: set ✅ if a plugin is migrated to the new Elasticsearch client or it doesn't use Elasticsearch client API at all.
App team
@elastic/kibana-app
App Services team
Blockers:
@elastic/kibana-app-services
Functional tests
#98608
APM team
@elastic/apm-ui
Functional tests
Core team
@elastic/kibana-core
GlobalSearchProviderContext
Logs metrics UI team
@elastic/logs-metrics-ui
Functional tests
Fleet team
@elastic/fleet
Functional tests
Observability UI team
@elastic/observability-ui
Stack monitoring UI team
@elastic/stack-monitoring-ui
Functional tests
Uptime team
@elastic/uptime
Functional tests
ML team
@elastic/ml-ui
Functional tests
Maps team
@elastic/kibana-gis
Operations team
@elastic/kibana-operations
Presentation team
@elastic/kibana-presentation
Security team
@elastic/kibana-security
Functional tests
Kibana Alerting team
@elastic/kibana-alerting-services
#50247
Functional tests
Enterprise Alerting team
@elastic/enterprise-search-frontend
Elasticsearch UI team
@elastic/kibana-stack-management
Tracked via #73973
Functional tests
Security Solution team
@elastic/endpoint-app-team
@elastic/security-detections-response
@elastic/security-threat-hunting
Logstash team
@elastic/logstash
Functional tests
Plugins that will not be migrated due to removal
The text was updated successfully, but these errors were encountered: