Skip to content
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

[Fleet] Add experimental toggle + support package spec field for TSDB #144530

Closed
5 tasks done
kpollich opened this issue Nov 3, 2022 · 22 comments · Fixed by #144974
Closed
5 tasks done

[Fleet] Add experimental toggle + support package spec field for TSDB #144530

kpollich opened this issue Nov 3, 2022 · 22 comments · Fixed by #144974
Assignees
Labels
QA:Validated Issue has been validated by QA Team:Fleet Team label for Observability Data Collection Fleet team

Comments

@kpollich
Copy link
Member

kpollich commented Nov 3, 2022

Child of #132818

Relates to elastic/package-spec#311

Since we've added support to the package spec for enabling TSDB on data streams, we need to add support in Fleet for this package manifest value.

We should also add a UI toggle (see synthetic source work: #140095) to enable package maintainers to opt in to TSDB functionality before committing to releasing a new version of their integrations.

https://github.com/elastic/integrations/blob/main/docs/how_to_test_new_indexing_features.md

Implementation

  • Add a toggle to the "Experimental indexing features" data streams UI for TSDB
    • Enabling this toggle should add the proper index.mode and index.routing_path values to the @package component template for the data stream
  • If the current package's manifest contains index_mode: time_series for a given data stream, the toggle should be in an "enabled + readonly" state, e.g. it cannot be disabled
  • Once the toggle is enabled and the policy is saved, the toggle should not be disable-able. Enabling TSDB for a data stream is an irreversible operation
  • Add a tooltip to make the irreversible nature of this operation clear

image

@kpollich kpollich added the Team:Fleet Team label for Observability Data Collection Fleet team label Nov 3, 2022
@elasticmachine
Copy link
Contributor

Pinging @elastic/fleet (Team:Fleet)

@juliaElastic
Copy link
Contributor

juliaElastic commented Nov 9, 2022

Is there any package having index_mode: "time_series" enabled? I didn't see in anywhere, according to this doc, it should be enabled in kubernetes, but I don't see it. https://github.com/elastic/integrations/blob/main/docs/how_to_test_new_indexing_features.md#time-series-indexing-tsdb---not-ga

I also don’t find any examples for time_series_dimension field. I would need one to test the routing_path setting.
“Note that the routing_path setting should correspond to fields with time_series_dimension specified.”

Or is it the same as dimension: true setting? https://github.com/jsoriano/integrations/blob/9c3dc9d4dc9e82e2b76b0b96ea93ea046aee19e7/packages/kubernetes/data_stream/pod/fields/base-fields.yml#L22-L26

EDIT: as discussed on slack, routing_path setting is not needed in component template, as elasticsearch generates that: elastic/elasticsearch#86790

@jlind23
Copy link
Contributor

jlind23 commented Nov 9, 2022

@jsoriano could you help out there?

@juliaElastic
Copy link
Contributor

@jlind23 we discussed on the chat yesterday and I posted a question to the elasticsearch team about how the routing_path automation should work: elastic/elasticsearch#74660 (comment)

@ghost
Copy link

ghost commented Nov 14, 2022

Hi @juliaElastic
We have gone through this feature. However, we had few queries related to same.

Could you please confirm:

  • Use case of this toggle button.
  • impact on the data stream of that integration.
  • Testing details (how can we test this at our end.)

CC: @kpollich
Thank you

@juliaElastic
Copy link
Contributor

@simranvaseer-qasource This is an extension of an existing feature, experimental indexing options that was introduced here with synthetic source. I'll document detailed steps how to verify the new TSDB toggle.

@juliaElastic
Copy link
Contributor

@simranvaseer-qasource see detailed test instructions here #144974

@juliaElastic
Copy link
Contributor

juliaElastic commented Nov 14, 2022

If the current package's manifest contains index_mode: time_series for a given data stream, the toggle should be in an "enabled + readonly" state, e.g. it cannot be disabled

@jsoriano I tried to add index_mode: "time_series" to system package to test the code that enables TSDB by default, but the setting is not propagating when I query the package info from EPR in Fleet. Am I doing something wrong?

Added the setting below here:
https://github.com/elastic/integrations/blob/main/packages/system/data_stream/cpu/manifest.yml

elasticsearch:
  index_mode: time_series

EDIT: found that the missing field was due to the package archive parse logic didn't map it: fc64c1b#diff-232dc9fd708e4f1495f59c12729834fecd84bd8af70d4c21363da14e79aa30c1

@juliaElastic
Copy link
Contributor

juliaElastic commented Nov 14, 2022

One more question:

  • Let's say I start using an integration with TSDB: false setting, and enable it later. I noticed that the routing_path is not generated on the existing data streams. Is it expected in this case for the users to manually roll over the data streams?

cc @kpollich

I have tested this scenario:

  • before rollover, the data stream was created before TSDB set to true:

image

  • command used to roll over:
POST metrics-system.cpu-default/_rollover
  • after rollover, the new data stream has the right routing_path

image

@ghost
Copy link

ghost commented Nov 15, 2022

Hi @juliaElastic

Thank you for providing the testing details. We will test this feature once it is available and will be creating test cases for the same.

Thanks!

@jsoriano
Copy link
Member

  • Let's say I start using an integration with TSDB: false setting, and enable it later. I noticed that the routing_path is not generated on the existing data streams. Is it expected in this case for the users to manually roll over the data streams?

I would expect a behaviour similar to the one when custom mappings are added. What happens in this case?

Or, I would expect the user to be asked with a confirmation dialog if they want Fleet to make the rollover or they want to do it themselves.

@juliaElastic
Copy link
Contributor

I would expect a behaviour similar to the one when custom mappings are added. What happens in this case?

I checked and I found on the custom component template edit page there is a text saying "Datastreams using that template need to be updated with aditionnal requests."
So I suppose it has to be done manually.

Or, I would expect the user to be asked with a confirmation dialog if they want Fleet to make the rollover or they want to do it themselves.

Good idea, I'll leave this open for discussion, it can be changed in follow up issues/prs.

juliaElastic added a commit that referenced this issue Nov 17, 2022
…ng settings (#144974)

## Summary

Closes #144530

Added a new option under integration / data streams / Index settings
(experimental) / TSDB

- [x] Add a toggle to the "Experimental indexing features" data streams
UI for TSDB
- Enabling this toggle adds `index.mode: time_series` to the data
stream's index template settings.
- Note: `index.routing_path` value was not needed to be added in this
logic, because there is an existing elasticsearch automation that
generates it from dimension fields, see test instructions.
- [x] If the current package's manifest contains `index_mode:
time_series` for a given data stream, the toggle should be in an
"enabled + readonly" state, e.g. it cannot be disabled
- Note: currently there is no package that has this setting enabled, I
tested locally by manually modifying the package info response. Will
need to figure out a way to create a mock package to test this.
- [x] Once the toggle is enabled and the policy is saved, the toggle
should _not_ be disable-able. Enabling TSDB for a data stream is an
irreversible operation
- [x] Add a tooltip to make the irreversible nature of this operation
clear

TSDB setting in System package:
<img width="915" alt="image"
src="https://user-images.githubusercontent.com/90178898/201656513-78bbe993-a900-4633-ad66-886f56ce2cf0.png">
<img width="632" alt="image"
src="https://user-images.githubusercontent.com/90178898/201656559-e0c90ae2-4b21-4ee9-9bfc-a69c4ffaf708.png">

Tooltip:
<img width="509" alt="image"
src="https://user-images.githubusercontent.com/90178898/201657054-11daeac3-cab2-45e4-8794-17a74b6c4300.png">


## Test instructions

### Setup local registry

- For testing, I created a new version of `System` package, that has a
`dimension` field called `test_dimension`. This is needed so that the
elasticsearch automation runs to generate the `routing_path` setting.

- Download the test data zip:

[registry-packages.zip](https://github.com/elastic/kibana/files/10004220/registry-packages.zip)


- Start a registry:
```
docker run -p 8080:8080 -v <path to unzipped dir>/input-packages/packages:/packages/test-packages -v <path to unzipped dir>/input-packages/package_registry_config.yml:/package-registry/config.yml docker.elastic.co/package-registry/package-registry:main
```
- Add this to your kibana config:
```
xpack.fleet.registryUrl: http://localhost:8080
```

- Open kibana, open Add System integration page (should be version
`1.20.5` coming from local registry)
- Enable only `Collect metrics from System instances / System cpu
metrics` stream, and enable `Time-series indexing (TSDB)` switch under
`Advanced options`
- Click on save integration. The integration should be added
successfully to an agent policy.
- Start a fleet server and enroll an agent to the previously created
agent policy. Wait for the agent to be healthy, this should trigger
system metrics flowing in, this way triggering the creation of the data
stream.
- Go to `Stack Management / Index Management / Index Templates`, and
open the details of `metrics-system.cpu`, check that it has this in
`Settings` tab: `index.mode: time_series`

<img width="2013" alt="image"
src="https://user-images.githubusercontent.com/90178898/201657409-1754d5a4-98fa-4646-9ccf-e47981404018.png">

- Go to `Indices` tab and look for
`data_stream="metrics-system.cpu-default"` including hidden indices. You
should see `routing_path` populated in Settings, and `test_dimension` in
Mappings.

<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/90178898/201659788-845fbca8-2cdb-4d1b-8af6-efc24b71f1d3.png">
<img width="774" alt="image"
src="https://user-images.githubusercontent.com/90178898/201659882-e9cba197-d354-494c-974a-3c580d4d98a5.png">

### Testing scenario of enabling TSDB in package spec by default

- Prepared a newer version of `system` package `v1.20.9` that has
`index_mode: "time_series"` in `system.cpu` data stream in package
manifest.
- Download and extract the below zip and restart the local epr container
to read from this folder.

[registry-packages.zip](https://github.com/elastic/kibana/files/10011702/registry-packages.zip)
- Open add system integration page
- Check that `tsdb:true` is set in `Preview API request` for
`system.cpu` data stream

<img width="1033" alt="image"
src="https://user-images.githubusercontent.com/90178898/201897480-f9a79526-776f-4d9f-b168-474b44e0aa53.png">

- Open the system cpu metrics stream on the policy editor, and check
that the TSDB switch is turned on.
<img width="1093" alt="image"
src="https://user-images.githubusercontent.com/90178898/201897787-f5a34aa6-c150-4c90-af97-bda6df92e0c4.png">
<img width="1051" alt="image"
src="https://user-images.githubusercontent.com/90178898/201897943-85157b6b-caca-492d-8933-46ebe19b6930.png">

### Update 11/16:

- After latest changes, expect `routing_path` with dimension fields to
be generated in Index Template when enabling TSDB:

<img width="1163" alt="image"
src="https://user-images.githubusercontent.com/90178898/202123899-388d3f74-014a-492c-91ad-8afc9e454186.png">

This was added to fix the issue mentioned here
#144974 (comment)

- After adding TSDB, modifying the parent component template should be
successful.

<img width="555" alt="image"
src="https://user-images.githubusercontent.com/90178898/202124250-14bcc310-0dd9-4246-8461-ef66c1f7ac43.png">


### Checklist

- [x] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [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: Kibana Machine <[email protected]>
kpollich pushed a commit to kpollich/kibana that referenced this issue Nov 29, 2022
…ng settings (elastic#144974)

## Summary

Closes elastic#144530

Added a new option under integration / data streams / Index settings
(experimental) / TSDB

- [x] Add a toggle to the "Experimental indexing features" data streams
UI for TSDB
- Enabling this toggle adds `index.mode: time_series` to the data
stream's index template settings.
- Note: `index.routing_path` value was not needed to be added in this
logic, because there is an existing elasticsearch automation that
generates it from dimension fields, see test instructions.
- [x] If the current package's manifest contains `index_mode:
time_series` for a given data stream, the toggle should be in an
"enabled + readonly" state, e.g. it cannot be disabled
- Note: currently there is no package that has this setting enabled, I
tested locally by manually modifying the package info response. Will
need to figure out a way to create a mock package to test this.
- [x] Once the toggle is enabled and the policy is saved, the toggle
should _not_ be disable-able. Enabling TSDB for a data stream is an
irreversible operation
- [x] Add a tooltip to make the irreversible nature of this operation
clear

TSDB setting in System package:
<img width="915" alt="image"
src="https://user-images.githubusercontent.com/90178898/201656513-78bbe993-a900-4633-ad66-886f56ce2cf0.png">
<img width="632" alt="image"
src="https://user-images.githubusercontent.com/90178898/201656559-e0c90ae2-4b21-4ee9-9bfc-a69c4ffaf708.png">

Tooltip:
<img width="509" alt="image"
src="https://user-images.githubusercontent.com/90178898/201657054-11daeac3-cab2-45e4-8794-17a74b6c4300.png">

## Test instructions

### Setup local registry

- For testing, I created a new version of `System` package, that has a
`dimension` field called `test_dimension`. This is needed so that the
elasticsearch automation runs to generate the `routing_path` setting.

- Download the test data zip:

[registry-packages.zip](https://github.com/elastic/kibana/files/10004220/registry-packages.zip)

- Start a registry:
```
docker run -p 8080:8080 -v <path to unzipped dir>/input-packages/packages:/packages/test-packages -v <path to unzipped dir>/input-packages/package_registry_config.yml:/package-registry/config.yml docker.elastic.co/package-registry/package-registry:main
```
- Add this to your kibana config:
```
xpack.fleet.registryUrl: http://localhost:8080
```

- Open kibana, open Add System integration page (should be version
`1.20.5` coming from local registry)
- Enable only `Collect metrics from System instances / System cpu
metrics` stream, and enable `Time-series indexing (TSDB)` switch under
`Advanced options`
- Click on save integration. The integration should be added
successfully to an agent policy.
- Start a fleet server and enroll an agent to the previously created
agent policy. Wait for the agent to be healthy, this should trigger
system metrics flowing in, this way triggering the creation of the data
stream.
- Go to `Stack Management / Index Management / Index Templates`, and
open the details of `metrics-system.cpu`, check that it has this in
`Settings` tab: `index.mode: time_series`

<img width="2013" alt="image"
src="https://user-images.githubusercontent.com/90178898/201657409-1754d5a4-98fa-4646-9ccf-e47981404018.png">

- Go to `Indices` tab and look for
`data_stream="metrics-system.cpu-default"` including hidden indices. You
should see `routing_path` populated in Settings, and `test_dimension` in
Mappings.

<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/90178898/201659788-845fbca8-2cdb-4d1b-8af6-efc24b71f1d3.png">
<img width="774" alt="image"
src="https://user-images.githubusercontent.com/90178898/201659882-e9cba197-d354-494c-974a-3c580d4d98a5.png">

### Testing scenario of enabling TSDB in package spec by default

- Prepared a newer version of `system` package `v1.20.9` that has
`index_mode: "time_series"` in `system.cpu` data stream in package
manifest.
- Download and extract the below zip and restart the local epr container
to read from this folder.

[registry-packages.zip](https://github.com/elastic/kibana/files/10011702/registry-packages.zip)
- Open add system integration page
- Check that `tsdb:true` is set in `Preview API request` for
`system.cpu` data stream

<img width="1033" alt="image"
src="https://user-images.githubusercontent.com/90178898/201897480-f9a79526-776f-4d9f-b168-474b44e0aa53.png">

- Open the system cpu metrics stream on the policy editor, and check
that the TSDB switch is turned on.
<img width="1093" alt="image"
src="https://user-images.githubusercontent.com/90178898/201897787-f5a34aa6-c150-4c90-af97-bda6df92e0c4.png">
<img width="1051" alt="image"
src="https://user-images.githubusercontent.com/90178898/201897943-85157b6b-caca-492d-8933-46ebe19b6930.png">

### Update 11/16:

- After latest changes, expect `routing_path` with dimension fields to
be generated in Index Template when enabling TSDB:

<img width="1163" alt="image"
src="https://user-images.githubusercontent.com/90178898/202123899-388d3f74-014a-492c-91ad-8afc9e454186.png">

This was added to fix the issue mentioned here
elastic#144974 (comment)

- After adding TSDB, modifying the parent component template should be
successful.

<img width="555" alt="image"
src="https://user-images.githubusercontent.com/90178898/202124250-14bcc310-0dd9-4246-8461-ef66c1f7ac43.png">

### Checklist

- [x] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [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: Kibana Machine <[email protected]>
(cherry picked from commit 4608af4)
kpollich pushed a commit to kpollich/kibana that referenced this issue Nov 29, 2022
…ng settings (elastic#144974)

## Summary

Closes elastic#144530

Added a new option under integration / data streams / Index settings
(experimental) / TSDB

- [x] Add a toggle to the "Experimental indexing features" data streams
UI for TSDB
- Enabling this toggle adds `index.mode: time_series` to the data
stream's index template settings.
- Note: `index.routing_path` value was not needed to be added in this
logic, because there is an existing elasticsearch automation that
generates it from dimension fields, see test instructions.
- [x] If the current package's manifest contains `index_mode:
time_series` for a given data stream, the toggle should be in an
"enabled + readonly" state, e.g. it cannot be disabled
- Note: currently there is no package that has this setting enabled, I
tested locally by manually modifying the package info response. Will
need to figure out a way to create a mock package to test this.
- [x] Once the toggle is enabled and the policy is saved, the toggle
should _not_ be disable-able. Enabling TSDB for a data stream is an
irreversible operation
- [x] Add a tooltip to make the irreversible nature of this operation
clear

TSDB setting in System package:
<img width="915" alt="image"
src="https://user-images.githubusercontent.com/90178898/201656513-78bbe993-a900-4633-ad66-886f56ce2cf0.png">
<img width="632" alt="image"
src="https://user-images.githubusercontent.com/90178898/201656559-e0c90ae2-4b21-4ee9-9bfc-a69c4ffaf708.png">

Tooltip:
<img width="509" alt="image"
src="https://user-images.githubusercontent.com/90178898/201657054-11daeac3-cab2-45e4-8794-17a74b6c4300.png">

## Test instructions

### Setup local registry

- For testing, I created a new version of `System` package, that has a
`dimension` field called `test_dimension`. This is needed so that the
elasticsearch automation runs to generate the `routing_path` setting.

- Download the test data zip:

[registry-packages.zip](https://github.com/elastic/kibana/files/10004220/registry-packages.zip)

- Start a registry:
```
docker run -p 8080:8080 -v <path to unzipped dir>/input-packages/packages:/packages/test-packages -v <path to unzipped dir>/input-packages/package_registry_config.yml:/package-registry/config.yml docker.elastic.co/package-registry/package-registry:main
```
- Add this to your kibana config:
```
xpack.fleet.registryUrl: http://localhost:8080
```

- Open kibana, open Add System integration page (should be version
`1.20.5` coming from local registry)
- Enable only `Collect metrics from System instances / System cpu
metrics` stream, and enable `Time-series indexing (TSDB)` switch under
`Advanced options`
- Click on save integration. The integration should be added
successfully to an agent policy.
- Start a fleet server and enroll an agent to the previously created
agent policy. Wait for the agent to be healthy, this should trigger
system metrics flowing in, this way triggering the creation of the data
stream.
- Go to `Stack Management / Index Management / Index Templates`, and
open the details of `metrics-system.cpu`, check that it has this in
`Settings` tab: `index.mode: time_series`

<img width="2013" alt="image"
src="https://user-images.githubusercontent.com/90178898/201657409-1754d5a4-98fa-4646-9ccf-e47981404018.png">

- Go to `Indices` tab and look for
`data_stream="metrics-system.cpu-default"` including hidden indices. You
should see `routing_path` populated in Settings, and `test_dimension` in
Mappings.

<img width="1792" alt="image"
src="https://user-images.githubusercontent.com/90178898/201659788-845fbca8-2cdb-4d1b-8af6-efc24b71f1d3.png">
<img width="774" alt="image"
src="https://user-images.githubusercontent.com/90178898/201659882-e9cba197-d354-494c-974a-3c580d4d98a5.png">

### Testing scenario of enabling TSDB in package spec by default

- Prepared a newer version of `system` package `v1.20.9` that has
`index_mode: "time_series"` in `system.cpu` data stream in package
manifest.
- Download and extract the below zip and restart the local epr container
to read from this folder.

[registry-packages.zip](https://github.com/elastic/kibana/files/10011702/registry-packages.zip)
- Open add system integration page
- Check that `tsdb:true` is set in `Preview API request` for
`system.cpu` data stream

<img width="1033" alt="image"
src="https://user-images.githubusercontent.com/90178898/201897480-f9a79526-776f-4d9f-b168-474b44e0aa53.png">

- Open the system cpu metrics stream on the policy editor, and check
that the TSDB switch is turned on.
<img width="1093" alt="image"
src="https://user-images.githubusercontent.com/90178898/201897787-f5a34aa6-c150-4c90-af97-bda6df92e0c4.png">
<img width="1051" alt="image"
src="https://user-images.githubusercontent.com/90178898/201897943-85157b6b-caca-492d-8933-46ebe19b6930.png">

### Update 11/16:

- After latest changes, expect `routing_path` with dimension fields to
be generated in Index Template when enabling TSDB:

<img width="1163" alt="image"
src="https://user-images.githubusercontent.com/90178898/202123899-388d3f74-014a-492c-91ad-8afc9e454186.png">

This was added to fix the issue mentioned here
elastic#144974 (comment)

- After adding TSDB, modifying the parent component template should be
successful.

<img width="555" alt="image"
src="https://user-images.githubusercontent.com/90178898/202124250-14bcc310-0dd9-4246-8461-ef66c1f7ac43.png">

### Checklist

- [x] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [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: Kibana Machine <[email protected]>
(cherry picked from commit 4608af4)
kpollich referenced this issue Nov 29, 2022
…Indexing settings (#144974) (#146562)

# Backport

This will backport the following commits from `main` to `8.6`:
- [Added Time-series indexing (TSDB) to Integrations Experimental
Indexing settings
(#144974)](#144974)

<!--- Backport version: 8.9.7 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)

<!--BACKPORT [{"author":{"name":"Julia
Bardi","email":"[email protected]"},"sourceCommit":{"committedDate":"2022-11-17T09:13:20Z","message":"Added
Time-series indexing (TSDB) to Integrations Experimental Indexing
settings (#144974)\n\n## Summary\r\n\r\nCloses
https://github.com/elastic/kibana/issues/144530\r\n\r\nAdded a new
option under integration / data streams / Index
settings\r\n(experimental) / TSDB\r\n\r\n- [x] Add a toggle to the
\"Experimental indexing features\" data streams\r\nUI for TSDB\r\n-
Enabling this toggle adds `index.mode: time_series` to the
data\r\nstream's index template settings.\r\n- Note:
`index.routing_path` value was not needed to be added in this\r\nlogic,
because there is an existing elasticsearch automation that\r\ngenerates
it from dimension fields, see test instructions.\r\n- [x] If the current
package's manifest contains `index_mode:\r\ntime_series` for a given
data stream, the toggle should be in an\r\n\"enabled + readonly\" state,
e.g. it cannot be disabled\r\n- Note: currently there is no package that
has this setting enabled, I\r\ntested locally by manually modifying the
package info response. Will\r\nneed to figure out a way to create a mock
package to test this.\r\n- [x] Once the toggle is enabled and the policy
is saved, the toggle\r\nshould _not_ be disable-able. Enabling TSDB for
a data stream is an\r\nirreversible operation\r\n- [x] Add a tooltip to
make the irreversible nature of this operation\r\nclear\r\n\r\nTSDB
setting in System package:\r\n<img width=\"915\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201656513-78bbe993-a900-4633-ad66-886f56ce2cf0.png\">\r\n<img
width=\"632\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201656559-e0c90ae2-4b21-4ee9-9bfc-a69c4ffaf708.png\">\r\n\r\nTooltip:\r\n<img
width=\"509\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201657054-11daeac3-cab2-45e4-8794-17a74b6c4300.png\">\r\n\r\n\r\n##
Test instructions\r\n\r\n### Setup local registry\r\n\r\n- For testing,
I created a new version of `System` package, that has a\r\n`dimension`
field called `test_dimension`. This is needed so that
the\r\nelasticsearch automation runs to generate the `routing_path`
setting.\r\n\r\n- Download the test data
zip:\r\n\r\n[registry-packages.zip](https://github.com/elastic/kibana/files/10004220/registry-packages.zip)\r\n\r\n\r\n-
Start a registry:\r\n```\r\ndocker run -p 8080:8080 -v <path to unzipped
dir>/input-packages/packages:/packages/test-packages -v <path to
unzipped
dir>/input-packages/package_registry_config.yml:/package-registry/config.yml
docker.elastic.co/package-registry/package-registry:main\r\n```\r\n- Add
this to your kibana config:\r\n```\r\nxpack.fleet.registryUrl:
http://localhost:8080\r\n```\r\n\r\n- Open kibana, open Add System
integration page (should be version\r\n`1.20.5` coming from local
registry)\r\n- Enable only `Collect metrics from System instances /
System cpu\r\nmetrics` stream, and enable `Time-series indexing (TSDB)`
switch under\r\n`Advanced options`\r\n- Click on save integration. The
integration should be added\r\nsuccessfully to an agent policy.\r\n-
Start a fleet server and enroll an agent to the previously
created\r\nagent policy. Wait for the agent to be healthy, this should
trigger\r\nsystem metrics flowing in, this way triggering the creation
of the data\r\nstream.\r\n- Go to `Stack Management / Index Management /
Index Templates`, and\r\nopen the details of `metrics-system.cpu`, check
that it has this in\r\n`Settings` tab: `index.mode:
time_series`\r\n\r\n<img width=\"2013\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201657409-1754d5a4-98fa-4646-9ccf-e47981404018.png\">\r\n\r\n-
Go to `Indices` tab and look
for\r\n`data_stream=\"metrics-system.cpu-default\"` including hidden
indices. You\r\nshould see `routing_path` populated in Settings, and
`test_dimension` in\r\nMappings.\r\n\r\n<img width=\"1792\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201659788-845fbca8-2cdb-4d1b-8af6-efc24b71f1d3.png\">\r\n<img
width=\"774\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201659882-e9cba197-d354-494c-974a-3c580d4d98a5.png\">\r\n\r\n###
Testing scenario of enabling TSDB in package spec by default\r\n\r\n-
Prepared a newer version of `system` package `v1.20.9` that
has\r\n`index_mode: \"time_series\"` in `system.cpu` data stream in
package\r\nmanifest.\r\n- Download and extract the below zip and restart
the local epr container\r\nto read from this
folder.\r\n\r\n[registry-packages.zip](https://github.com/elastic/kibana/files/10011702/registry-packages.zip)\r\n-
Open add system integration page\r\n- Check that `tsdb:true` is set in
`Preview API request` for\r\n`system.cpu` data stream\r\n\r\n<img
width=\"1033\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201897480-f9a79526-776f-4d9f-b168-474b44e0aa53.png\">\r\n\r\n-
Open the system cpu metrics stream on the policy editor, and
check\r\nthat the TSDB switch is turned on.\r\n<img width=\"1093\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201897787-f5a34aa6-c150-4c90-af97-bda6df92e0c4.png\">\r\n<img
width=\"1051\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201897943-85157b6b-caca-492d-8933-46ebe19b6930.png\">\r\n\r\n###
Update 11/16:\r\n\r\n- After latest changes, expect `routing_path` with
dimension fields to\r\nbe generated in Index Template when enabling
TSDB:\r\n\r\n<img width=\"1163\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/202123899-388d3f74-014a-492c-91ad-8afc9e454186.png\">\r\n\r\nThis
was added to fix the issue mentioned
here\r\nhttps://github.com//pull/144974#issuecomment-1315270890\r\n\r\n-
After adding TSDB, modifying the parent component template should
be\r\nsuccessful.\r\n\r\n<img width=\"555\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/202124250-14bcc310-0dd9-4246-8461-ef66c1f7ac43.png\">\r\n\r\n\r\n###
Checklist\r\n\r\n- [x] Any text added follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[x] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios\r\n\r\nCo-authored-by: Kibana Machine
<[email protected]>","sha":"4608af41da7dc98403bbdbfba8a3ac02475277e4","branchLabelMapping":{"^v8.7.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["backport:skip","Team:Fleet","release_note:feature","v8.7.0"],"number":144974,"url":"https://github.com/elastic/kibana/pull/144974","mergeCommit":{"message":"Added
Time-series indexing (TSDB) to Integrations Experimental Indexing
settings (#144974)\n\n## Summary\r\n\r\nCloses
https://github.com/elastic/kibana/issues/144530\r\n\r\nAdded a new
option under integration / data streams / Index
settings\r\n(experimental) / TSDB\r\n\r\n- [x] Add a toggle to the
\"Experimental indexing features\" data streams\r\nUI for TSDB\r\n-
Enabling this toggle adds `index.mode: time_series` to the
data\r\nstream's index template settings.\r\n- Note:
`index.routing_path` value was not needed to be added in this\r\nlogic,
because there is an existing elasticsearch automation that\r\ngenerates
it from dimension fields, see test instructions.\r\n- [x] If the current
package's manifest contains `index_mode:\r\ntime_series` for a given
data stream, the toggle should be in an\r\n\"enabled + readonly\" state,
e.g. it cannot be disabled\r\n- Note: currently there is no package that
has this setting enabled, I\r\ntested locally by manually modifying the
package info response. Will\r\nneed to figure out a way to create a mock
package to test this.\r\n- [x] Once the toggle is enabled and the policy
is saved, the toggle\r\nshould _not_ be disable-able. Enabling TSDB for
a data stream is an\r\nirreversible operation\r\n- [x] Add a tooltip to
make the irreversible nature of this operation\r\nclear\r\n\r\nTSDB
setting in System package:\r\n<img width=\"915\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201656513-78bbe993-a900-4633-ad66-886f56ce2cf0.png\">\r\n<img
width=\"632\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201656559-e0c90ae2-4b21-4ee9-9bfc-a69c4ffaf708.png\">\r\n\r\nTooltip:\r\n<img
width=\"509\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201657054-11daeac3-cab2-45e4-8794-17a74b6c4300.png\">\r\n\r\n\r\n##
Test instructions\r\n\r\n### Setup local registry\r\n\r\n- For testing,
I created a new version of `System` package, that has a\r\n`dimension`
field called `test_dimension`. This is needed so that
the\r\nelasticsearch automation runs to generate the `routing_path`
setting.\r\n\r\n- Download the test data
zip:\r\n\r\n[registry-packages.zip](https://github.com/elastic/kibana/files/10004220/registry-packages.zip)\r\n\r\n\r\n-
Start a registry:\r\n```\r\ndocker run -p 8080:8080 -v <path to unzipped
dir>/input-packages/packages:/packages/test-packages -v <path to
unzipped
dir>/input-packages/package_registry_config.yml:/package-registry/config.yml
docker.elastic.co/package-registry/package-registry:main\r\n```\r\n- Add
this to your kibana config:\r\n```\r\nxpack.fleet.registryUrl:
http://localhost:8080\r\n```\r\n\r\n- Open kibana, open Add System
integration page (should be version\r\n`1.20.5` coming from local
registry)\r\n- Enable only `Collect metrics from System instances /
System cpu\r\nmetrics` stream, and enable `Time-series indexing (TSDB)`
switch under\r\n`Advanced options`\r\n- Click on save integration. The
integration should be added\r\nsuccessfully to an agent policy.\r\n-
Start a fleet server and enroll an agent to the previously
created\r\nagent policy. Wait for the agent to be healthy, this should
trigger\r\nsystem metrics flowing in, this way triggering the creation
of the data\r\nstream.\r\n- Go to `Stack Management / Index Management /
Index Templates`, and\r\nopen the details of `metrics-system.cpu`, check
that it has this in\r\n`Settings` tab: `index.mode:
time_series`\r\n\r\n<img width=\"2013\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201657409-1754d5a4-98fa-4646-9ccf-e47981404018.png\">\r\n\r\n-
Go to `Indices` tab and look
for\r\n`data_stream=\"metrics-system.cpu-default\"` including hidden
indices. You\r\nshould see `routing_path` populated in Settings, and
`test_dimension` in\r\nMappings.\r\n\r\n<img width=\"1792\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201659788-845fbca8-2cdb-4d1b-8af6-efc24b71f1d3.png\">\r\n<img
width=\"774\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201659882-e9cba197-d354-494c-974a-3c580d4d98a5.png\">\r\n\r\n###
Testing scenario of enabling TSDB in package spec by default\r\n\r\n-
Prepared a newer version of `system` package `v1.20.9` that
has\r\n`index_mode: \"time_series\"` in `system.cpu` data stream in
package\r\nmanifest.\r\n- Download and extract the below zip and restart
the local epr container\r\nto read from this
folder.\r\n\r\n[registry-packages.zip](https://github.com/elastic/kibana/files/10011702/registry-packages.zip)\r\n-
Open add system integration page\r\n- Check that `tsdb:true` is set in
`Preview API request` for\r\n`system.cpu` data stream\r\n\r\n<img
width=\"1033\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201897480-f9a79526-776f-4d9f-b168-474b44e0aa53.png\">\r\n\r\n-
Open the system cpu metrics stream on the policy editor, and
check\r\nthat the TSDB switch is turned on.\r\n<img width=\"1093\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201897787-f5a34aa6-c150-4c90-af97-bda6df92e0c4.png\">\r\n<img
width=\"1051\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201897943-85157b6b-caca-492d-8933-46ebe19b6930.png\">\r\n\r\n###
Update 11/16:\r\n\r\n- After latest changes, expect `routing_path` with
dimension fields to\r\nbe generated in Index Template when enabling
TSDB:\r\n\r\n<img width=\"1163\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/202123899-388d3f74-014a-492c-91ad-8afc9e454186.png\">\r\n\r\nThis
was added to fix the issue mentioned
here\r\nhttps://github.com//pull/144974#issuecomment-1315270890\r\n\r\n-
After adding TSDB, modifying the parent component template should
be\r\nsuccessful.\r\n\r\n<img width=\"555\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/202124250-14bcc310-0dd9-4246-8461-ef66c1f7ac43.png\">\r\n\r\n\r\n###
Checklist\r\n\r\n- [x] Any text added follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[x] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios\r\n\r\nCo-authored-by: Kibana Machine
<[email protected]>","sha":"4608af41da7dc98403bbdbfba8a3ac02475277e4"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v8.7.0","labelRegex":"^v8.7.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/144974","number":144974,"mergeCommit":{"message":"Added
Time-series indexing (TSDB) to Integrations Experimental Indexing
settings (#144974)\n\n## Summary\r\n\r\nCloses
https://github.com/elastic/kibana/issues/144530\r\n\r\nAdded a new
option under integration / data streams / Index
settings\r\n(experimental) / TSDB\r\n\r\n- [x] Add a toggle to the
\"Experimental indexing features\" data streams\r\nUI for TSDB\r\n-
Enabling this toggle adds `index.mode: time_series` to the
data\r\nstream's index template settings.\r\n- Note:
`index.routing_path` value was not needed to be added in this\r\nlogic,
because there is an existing elasticsearch automation that\r\ngenerates
it from dimension fields, see test instructions.\r\n- [x] If the current
package's manifest contains `index_mode:\r\ntime_series` for a given
data stream, the toggle should be in an\r\n\"enabled + readonly\" state,
e.g. it cannot be disabled\r\n- Note: currently there is no package that
has this setting enabled, I\r\ntested locally by manually modifying the
package info response. Will\r\nneed to figure out a way to create a mock
package to test this.\r\n- [x] Once the toggle is enabled and the policy
is saved, the toggle\r\nshould _not_ be disable-able. Enabling TSDB for
a data stream is an\r\nirreversible operation\r\n- [x] Add a tooltip to
make the irreversible nature of this operation\r\nclear\r\n\r\nTSDB
setting in System package:\r\n<img width=\"915\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201656513-78bbe993-a900-4633-ad66-886f56ce2cf0.png\">\r\n<img
width=\"632\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201656559-e0c90ae2-4b21-4ee9-9bfc-a69c4ffaf708.png\">\r\n\r\nTooltip:\r\n<img
width=\"509\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201657054-11daeac3-cab2-45e4-8794-17a74b6c4300.png\">\r\n\r\n\r\n##
Test instructions\r\n\r\n### Setup local registry\r\n\r\n- For testing,
I created a new version of `System` package, that has a\r\n`dimension`
field called `test_dimension`. This is needed so that
the\r\nelasticsearch automation runs to generate the `routing_path`
setting.\r\n\r\n- Download the test data
zip:\r\n\r\n[registry-packages.zip](https://github.com/elastic/kibana/files/10004220/registry-packages.zip)\r\n\r\n\r\n-
Start a registry:\r\n```\r\ndocker run -p 8080:8080 -v <path to unzipped
dir>/input-packages/packages:/packages/test-packages -v <path to
unzipped
dir>/input-packages/package_registry_config.yml:/package-registry/config.yml
docker.elastic.co/package-registry/package-registry:main\r\n```\r\n- Add
this to your kibana config:\r\n```\r\nxpack.fleet.registryUrl:
http://localhost:8080\r\n```\r\n\r\n- Open kibana, open Add System
integration page (should be version\r\n`1.20.5` coming from local
registry)\r\n- Enable only `Collect metrics from System instances /
System cpu\r\nmetrics` stream, and enable `Time-series indexing (TSDB)`
switch under\r\n`Advanced options`\r\n- Click on save integration. The
integration should be added\r\nsuccessfully to an agent policy.\r\n-
Start a fleet server and enroll an agent to the previously
created\r\nagent policy. Wait for the agent to be healthy, this should
trigger\r\nsystem metrics flowing in, this way triggering the creation
of the data\r\nstream.\r\n- Go to `Stack Management / Index Management /
Index Templates`, and\r\nopen the details of `metrics-system.cpu`, check
that it has this in\r\n`Settings` tab: `index.mode:
time_series`\r\n\r\n<img width=\"2013\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201657409-1754d5a4-98fa-4646-9ccf-e47981404018.png\">\r\n\r\n-
Go to `Indices` tab and look
for\r\n`data_stream=\"metrics-system.cpu-default\"` including hidden
indices. You\r\nshould see `routing_path` populated in Settings, and
`test_dimension` in\r\nMappings.\r\n\r\n<img width=\"1792\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201659788-845fbca8-2cdb-4d1b-8af6-efc24b71f1d3.png\">\r\n<img
width=\"774\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201659882-e9cba197-d354-494c-974a-3c580d4d98a5.png\">\r\n\r\n###
Testing scenario of enabling TSDB in package spec by default\r\n\r\n-
Prepared a newer version of `system` package `v1.20.9` that
has\r\n`index_mode: \"time_series\"` in `system.cpu` data stream in
package\r\nmanifest.\r\n- Download and extract the below zip and restart
the local epr container\r\nto read from this
folder.\r\n\r\n[registry-packages.zip](https://github.com/elastic/kibana/files/10011702/registry-packages.zip)\r\n-
Open add system integration page\r\n- Check that `tsdb:true` is set in
`Preview API request` for\r\n`system.cpu` data stream\r\n\r\n<img
width=\"1033\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201897480-f9a79526-776f-4d9f-b168-474b44e0aa53.png\">\r\n\r\n-
Open the system cpu metrics stream on the policy editor, and
check\r\nthat the TSDB switch is turned on.\r\n<img width=\"1093\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201897787-f5a34aa6-c150-4c90-af97-bda6df92e0c4.png\">\r\n<img
width=\"1051\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/201897943-85157b6b-caca-492d-8933-46ebe19b6930.png\">\r\n\r\n###
Update 11/16:\r\n\r\n- After latest changes, expect `routing_path` with
dimension fields to\r\nbe generated in Index Template when enabling
TSDB:\r\n\r\n<img width=\"1163\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/202123899-388d3f74-014a-492c-91ad-8afc9e454186.png\">\r\n\r\nThis
was added to fix the issue mentioned
here\r\nhttps://github.com//pull/144974#issuecomment-1315270890\r\n\r\n-
After adding TSDB, modifying the parent component template should
be\r\nsuccessful.\r\n\r\n<img width=\"555\"
alt=\"image\"\r\nsrc=\"https://user-images.githubusercontent.com/90178898/202124250-14bcc310-0dd9-4246-8461-ef66c1f7ac43.png\">\r\n\r\n\r\n###
Checklist\r\n\r\n- [x] Any text added follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[x] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios\r\n\r\nCo-authored-by: Kibana Machine
<[email protected]>","sha":"4608af41da7dc98403bbdbfba8a3ac02475277e4"}}]}]
BACKPORT-->

Co-authored-by: Julia Bardi <[email protected]>
@amolnater-qasource
Copy link

Hi @juliaElastic

We have revalidated this feature on latest 8.7.0 BC4 self-managed environment and had below observations:
We have followed the guide available under #144974

On running first package:

  • We have received the System version 1.20.5.
  • However no tsdb field is available under System>Metrics>cpu> Advanced options.
  • No data is available under Stack Management / Index Management / Index Templates/metrics-system.cpu/Settings tab.

Screenshots:

ec2-52-207-251-0.compute-1.amazonaws.com.-.Remote.Desktop.Connection.2023-03-06.11-20-45.mp4

1
2
3
4
5

Agent policy with v1.20.5:
1.20.5-elastic-agent.zip

On running second package:

  • We have received the System version 1.20.9.
  • However no tsdb field is available under System>Metrics>cpu> Advanced options.
  • Few data is available under Stack Management / Index Management / Index Templates/metrics-system.cpu/Settings tab.
  • Unable to edit metrics-system.cpu@custom and getting an error.

Screenshots:

ec2-44-192-51-97.compute-1.amazonaws.com.-.Remote.Desktop.Connection.2023-03-06.14-17-32.mp4
ec2-44-192-51-97.compute-1.amazonaws.com.-.Remote.Desktop.Connection.2023-03-06.14-26-28.mp4

6
7
8

Agent policy with v1.20.9:
1.20.9-elastic-agent.zip

Build details:
BUILD: 60949
COMMIT: de22cd9

Please let us know if we are missing anything here.

Thanks

@kpollich
Copy link
Member Author

kpollich commented Mar 6, 2023

@amolnater-qasource - You'll need to add the feature flag to kibana.yml per #148418

xpack.fleet.enableExperimental: ['experimentalDataStreamSettings']

@amolnater-qasource
Copy link

Hi @kpollich

Thank you for sharing the required xpack.
The tsdb settings are now available for cpu-system-metrics.

Observations:

  • For v1.20.5

Screen Recordings:

ec2-44-197-249-206.compute-1.amazonaws.com.-.Remote.Desktop.Connection.2023-03-07.11-06-54.mp4
ec2-44-197-249-206.compute-1.amazonaws.com.-.Remote.Desktop.Connection.2023-03-07.11-15-04.mp4

1
2

Observations:

  • For v1.20.9
ec2-44-197-249-206.compute-1.amazonaws.com.-.Remote.Desktop.Connection.2023-03-07.11-58-44.mp4
ec2-44-197-249-206.compute-1.amazonaws.com.-.Remote.Desktop.Connection.2023-03-07.11-56-58.mp4
ec2-44-197-249-206.compute-1.amazonaws.com.-.Remote.Desktop.Connection.2023-03-07.11-52-05.mp4
ec2-44-197-249-206.compute-1.amazonaws.com.-.Remote.Desktop.Connection.2023-03-07.14-06-51.mp4

3
4
5

Details for v1.20.9:

  • Able to create Custom-Pipelines.
  • tsdb is false under Preview API request, however on adding to the agent policy the tsdb is enabled under integration settings.
  • Further, under index template>Settings, routing_path is not displayed.

image

Could you please confirm if these are expected?

Please let us know if anything else is required from our end.
Thanks

@juliaElastic
Copy link
Contributor

juliaElastic commented Mar 7, 2023

@amolnater-qasource Similarly to #152778 (comment) I'm confused where system-1.20.9 package is coming from. Is this a version you created for testing? If so, could you share the zip file?

As for the routing_path, it is only generated if there is at least one dimension field, I think.
The logic that generated it was removed from kibana and is done by elasticsearch now. This was fixed in elastic/elasticsearch#91592

@amolnater-qasource
Copy link

Hi @juliaElastic

Thank you for looking into this.
The System integration version system-1.20.9 is loaded on setting the registry-package available under section: Testing scenario of enabling TSDB in package spec by default at #144974 (comment)

Registery:
registry-packages.zip

Further, could you please update the testing details under #144974 (comment)
It would be helpful for us to create the test cases for this feature.

cc: @kpollich
Thanks

@juliaElastic
Copy link
Contributor

@amolnater-qasource I see, I remembered now that the 1.20.5 test package was used to test enabling tsdb with a dimension field, and 1.20.9 should have tsdb enabled by default in package.

tsdb is false under Preview API request, however on adding to the agent policy the tsdb is enabled under integration settings.

I didn't see the experimental_data_stream_features at all in the Preview API request until I toggled one of the experimental switches. This has been working before, so it sounds like a bug. Could you please open a new bug for this, so we can track it better than a closed issue.

When I make any change to the experimental switches (even toggle on and off another one), the preview request is updated with tsdb:true, and after saving the index template is updated with expected index.mode: time_series in settings and routing_path populated.

@amolnater-qasource
Copy link

Hi @juliaElastic

Thank you for the updates.
We have logged the required issue for System-v1.20.9 under #153191

Further, could you please confirm if we need to add this feature under our regression cycle.
If yes, then do we need to add the testcases for both the versions of System integration- v1.20.5 and v1.20.9.

Please let us know if anything else is required from our end.

cc: @kpollich
Thanks!

@juliaElastic
Copy link
Contributor

@amolnater-qasource I think it would be good to add one testcase to regression, the one where the time series is enabled in package spec (this was in 1.20.9)

@amolnater-qasource
Copy link

Hi @juliaElastic

Thank you for confirming.
We have created 02 testcases for this feature under our Fleet test suite at links:

Please let us know if any other validation needs to be covered from our end.
Thanks

@amolnater-qasource
Copy link

Hi Team,

We have executed 02 testcases under Feature test run for 8.7.0 release at link:

Status:

  • PASS: 01
  • FAIL: 01

Open issue for failed testcase: #153191

Build details:
VERSION: 8.7 BC9
BUILD: 61093
COMMIT: 8eda067

As the testing is completed on this feature, we are marking this as QA:Validated.

Please let us know if anything else is required from our end.
Thanks

@amolnater-qasource amolnater-qasource added QA:Validated Issue has been validated by QA and removed QA:Needs Validation Issue needs to be validated by QA labels Mar 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
QA:Validated Issue has been validated by QA Team:Fleet Team label for Observability Data Collection Fleet team
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants