mirror of
https://github.com/elastic/kibana.git
synced 2025-04-24 09:48:58 -04:00
# Backport This will backport the following commits from `main` to `8.7`: - [[maps] include vector tile layers in geoShapeAggLayersCount telemetry (#151072)](https://github.com/elastic/kibana/pull/151072) <!--- Backport version: 8.9.7 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sqren/backport) <!--BACKPORT [{"author":{"name":"Nathan Reese","email":"reese.nathan@elastic.co"},"sourceCommit":{"committedDate":"2023-02-13T22:49:52Z","message":"[maps] include vector tile layers in geoShapeAggLayersCount telemetry (#151072)\n\nWhile investigating https://github.com/elastic/kibana/issues/151064, I\r\nfound a problem with IndexPatternStatsCollector where geo_shape\r\naggregation usage with vector tile layers are not counted.\r\n\r\nSteps to view problem:\r\n* Download [world countries\r\ngeojson](https://vector.maps.elastic.co/files/world_countries_v7.geo.json?elastic_tile_service_tos=agree&my_app_name=ems-landing-page&my_app_version=8.6.0&license=643c1faf-80fc-4ab0-9323-4d9bd11f4bbc)\r\n* use file upload to upload world countries into your Elastic stack\r\n* add a new cluster layer to your map. \r\n * Select world countries index\r\n * Select **Hexagons**\r\n * Click **Add layer**\r\n * Save map\r\n* Open borwser dev tools and switch to network tab\r\n* Open Kibana dev tools and run \r\n ```\r\n POST kbn:api/telemetry/v2/clusters/_stats\r\n { \"unencrypted\": true }\r\n ```\r\n* Copy response for `_stats` request. Search for\r\n`geoShapeAggLayersCount`. Notice how the value is zero but it should be\r\none since you have one map using geo shape aggregation\r\n<img width=\"600\" alt=\"Screen Shot 2023-02-13 at 1 14 34 PM\"\r\nsrc=\"https://user-images.githubusercontent.com/373691/218565153-0060dd4b-e422-477f-8b07-9f4dabd73064.png\">\r\n\r\n\r\nPR resolves the problem by removing layer type guard. The guard is error\r\nprone and easy to not update with new layer types. The guard does not\r\nprovide any value, since the logic is really concerned with source types\r\nand the source type guards provide the correct protections.\r\n\r\nSteps to test:\r\nFollow steps above and verify `geoShapeAggLayersCount` is one","sha":"9d7e1095365483ad9bc083829f3f291c478e7cf6","branchLabelMapping":{"^v8.8.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Presentation","release_note:skip","auto-backport","Feature:Maps","v8.7.0","v8.8.0"],"number":151072,"url":"https://github.com/elastic/kibana/pull/151072","mergeCommit":{"message":"[maps] include vector tile layers in geoShapeAggLayersCount telemetry (#151072)\n\nWhile investigating https://github.com/elastic/kibana/issues/151064, I\r\nfound a problem with IndexPatternStatsCollector where geo_shape\r\naggregation usage with vector tile layers are not counted.\r\n\r\nSteps to view problem:\r\n* Download [world countries\r\ngeojson](https://vector.maps.elastic.co/files/world_countries_v7.geo.json?elastic_tile_service_tos=agree&my_app_name=ems-landing-page&my_app_version=8.6.0&license=643c1faf-80fc-4ab0-9323-4d9bd11f4bbc)\r\n* use file upload to upload world countries into your Elastic stack\r\n* add a new cluster layer to your map. \r\n * Select world countries index\r\n * Select **Hexagons**\r\n * Click **Add layer**\r\n * Save map\r\n* Open borwser dev tools and switch to network tab\r\n* Open Kibana dev tools and run \r\n ```\r\n POST kbn:api/telemetry/v2/clusters/_stats\r\n { \"unencrypted\": true }\r\n ```\r\n* Copy response for `_stats` request. Search for\r\n`geoShapeAggLayersCount`. Notice how the value is zero but it should be\r\none since you have one map using geo shape aggregation\r\n<img width=\"600\" alt=\"Screen Shot 2023-02-13 at 1 14 34 PM\"\r\nsrc=\"https://user-images.githubusercontent.com/373691/218565153-0060dd4b-e422-477f-8b07-9f4dabd73064.png\">\r\n\r\n\r\nPR resolves the problem by removing layer type guard. The guard is error\r\nprone and easy to not update with new layer types. The guard does not\r\nprovide any value, since the logic is really concerned with source types\r\nand the source type guards provide the correct protections.\r\n\r\nSteps to test:\r\nFollow steps above and verify `geoShapeAggLayersCount` is one","sha":"9d7e1095365483ad9bc083829f3f291c478e7cf6"}},"sourceBranch":"main","suggestedTargetBranches":["8.7"],"targetPullRequestStates":[{"branch":"8.7","label":"v8.7.0","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v8.8.0","labelRegex":"^v8.8.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/151072","number":151072,"mergeCommit":{"message":"[maps] include vector tile layers in geoShapeAggLayersCount telemetry (#151072)\n\nWhile investigating https://github.com/elastic/kibana/issues/151064, I\r\nfound a problem with IndexPatternStatsCollector where geo_shape\r\naggregation usage with vector tile layers are not counted.\r\n\r\nSteps to view problem:\r\n* Download [world countries\r\ngeojson](https://vector.maps.elastic.co/files/world_countries_v7.geo.json?elastic_tile_service_tos=agree&my_app_name=ems-landing-page&my_app_version=8.6.0&license=643c1faf-80fc-4ab0-9323-4d9bd11f4bbc)\r\n* use file upload to upload world countries into your Elastic stack\r\n* add a new cluster layer to your map. \r\n * Select world countries index\r\n * Select **Hexagons**\r\n * Click **Add layer**\r\n * Save map\r\n* Open borwser dev tools and switch to network tab\r\n* Open Kibana dev tools and run \r\n ```\r\n POST kbn:api/telemetry/v2/clusters/_stats\r\n { \"unencrypted\": true }\r\n ```\r\n* Copy response for `_stats` request. Search for\r\n`geoShapeAggLayersCount`. Notice how the value is zero but it should be\r\none since you have one map using geo shape aggregation\r\n<img width=\"600\" alt=\"Screen Shot 2023-02-13 at 1 14 34 PM\"\r\nsrc=\"https://user-images.githubusercontent.com/373691/218565153-0060dd4b-e422-477f-8b07-9f4dabd73064.png\">\r\n\r\n\r\nPR resolves the problem by removing layer type guard. The guard is error\r\nprone and easy to not update with new layer types. The guard does not\r\nprovide any value, since the logic is really concerned with source types\r\nand the source type guards provide the correct protections.\r\n\r\nSteps to test:\r\nFollow steps above and verify `geoShapeAggLayersCount` is one","sha":"9d7e1095365483ad9bc083829f3f291c478e7cf6"}}]}] BACKPORT--> Co-authored-by: Nathan Reese <reese.nathan@elastic.co>
This commit is contained in:
parent
f2ea20f6e0
commit
2c7612f0ee
1 changed files with 1 additions and 9 deletions
|
@ -9,7 +9,7 @@ import type { SavedObject } from '@kbn/core/server';
|
|||
import { asyncForEach } from '@kbn/std';
|
||||
import { KBN_FIELD_TYPES } from '@kbn/field-types';
|
||||
import { DataViewsService } from '@kbn/data-views-plugin/common';
|
||||
import { LAYER_TYPE, SCALING_TYPES, SOURCE_TYPES } from '../../../common/constants';
|
||||
import { SCALING_TYPES, SOURCE_TYPES } from '../../../common/constants';
|
||||
import { injectReferences } from '../../../common/migrations/references';
|
||||
import {
|
||||
ESGeoGridSourceDescriptor,
|
||||
|
@ -107,14 +107,6 @@ export class IndexPatternStatsCollector {
|
|||
return false;
|
||||
}
|
||||
|
||||
if (
|
||||
layer.type !== LAYER_TYPE.GEOJSON_VECTOR &&
|
||||
layer.type !== LAYER_TYPE.BLENDED_VECTOR &&
|
||||
layer.type !== LAYER_TYPE.HEATMAP
|
||||
) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const sourceDescriptor = layer.sourceDescriptor;
|
||||
if (sourceDescriptor.type === SOURCE_TYPES.ES_GEO_GRID) {
|
||||
return await this._isFieldGeoShape(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue