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

Filtering system indices by naming standard #56777

Closed
freesinger opened this issue May 14, 2020 · 2 comments
Closed

Filtering system indices by naming standard #56777

freesinger opened this issue May 14, 2020 · 2 comments
Labels
:Core/Infra/Core Core issues without another label >enhancement Team:Core/Infra Meta label for core/infra team

Comments

@freesinger
Copy link

I tried to export elasticsearch indices and found system index starting with dot like .kibana index appeared. Since it's a convention to name a system index, I set a simple rule to filter all the system indices. Soon I found that users can name an index starting with . and the index can be accepted.

Wondering whether this naming behavior can be prevented by ES engine or can I filter system indices by other metadata of indices?

@freesinger freesinger added >enhancement needs:triage Requires assignment of a team area label labels May 14, 2020
@jimczi jimczi added the :Core/Infra/Core Core issues without another label label May 15, 2020
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-core-infra (:Core/Infra/Core)

@elasticmachine elasticmachine added the Team:Core/Infra Meta label for core/infra team label May 15, 2020
@jimczi jimczi added Team:Core/Infra Meta label for core/infra team and removed Team:Core/Infra Meta label for core/infra team needs:triage Requires assignment of a team area label labels May 15, 2020
@gwbrown
Copy link
Contributor

gwbrown commented May 15, 2020

Hi @freesinger, thanks for using Elasticsearch! We're in the process of implementing some features that I think will fulfill this requirement. I'll give a brief summary below, or you can find our tracking issue at #50251.

First, in the recently-released version 7.7.0, there's a new feature called "hidden indices" using the new index setting index.hidden. These indices are just like normal indices, except that when Elasticsearch expands index patterns (e.g. my-index*), only non-hidden indices will be returned unless hidden indices are requested using the expand_wildcards=all (or =hidden,open) REST parameter. Hidden indices are intended for system data that users may still want to access, such as .watch_history*. Many of the "dot indices" will become hidden indices starting in 7.7.

Second, we're introducing a formalized concept of "system indices", which will be completely locked down and managed by Elasticsearch (or plugins), and access to these indices will only be possible via specialized APIs. This feature is still in development. These formalized system indices are intended for data that is more sensitive or that needs to be tightly controlled - .watches and .security are expected to use this feature in a future release, for example.

Finally, in 7.7.0, we've deprecated the creation of indices with dot-prefixed names that are not 1) hidden indices or 2) managed by ES or a plugin. In a future major version, all dot-prefixed indices will be required to either be hidden or a managed system index.

I think this should cover the use case you're asking about, so I'm going to close this issue. If there's something we've missed and this doesn't cover your use case, please feel free to provide feedback.

If you would like assistance handling dot-prefixed indices in the meantime, I encourage you to ask on our forums.

@gwbrown gwbrown closed this as completed May 15, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Core/Infra/Core Core issues without another label >enhancement Team:Core/Infra Meta label for core/infra team
Projects
None yet
Development

No branches or pull requests

4 participants