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

UI for adding fields aliases for ECS #26807

Open
ruflin opened this issue Dec 7, 2018 · 9 comments
Open

UI for adding fields aliases for ECS #26807

ruflin opened this issue Dec 7, 2018 · 9 comments
Labels
enhancement New value added to drive a business result Feature:ecs Feature:Index Management Index and index templates UI Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more

Comments

@ruflin
Copy link
Contributor

ruflin commented Dec 7, 2018

Idea Description

With the introduction of ECS users will want to map their existing data to ECS. Assuming a user has field source_ip but ECS is source.ip, he will want to create an alias from source.ip to source_ip. With the Elasticsearch API it's possible to append mapping to existing indices (see example on the bottom).

As normally not only 1 field has to be mapped, I would hope for an easy way to specify the alias name, the path (field) it should point to and the indices it should be applied to. I could imagine this as a table with two columns for the field and alias name. On the bottom or top a field for the index names.

Elasticsearch commands

The necessary commands in Elasticsearch to apply alias b to field a across several indices looks today as following:

PUT test-1
{
  "mappings": {
    "_doc": {
      "properties": {
        "a": {
          "type": "keyword"
        }
      }
    }
  }
}

PUT test-2
{
  "mappings": {
    "_doc": {
      "properties": {
        "a": {
          "type": "keyword"
        }
      }
    }
  }
}

PUT foo
{
  "mappings": {
    "_doc": {
      "properties": {
        "a": {
          "type": "keyword"
        }
      }
    }
  }
}

PUT test-*,foo/_mapping/_doc 
{
  "properties": {
    "b": {
      "type": "alias",
      "path": "a"
    }
  }
}

Additional ideas

These are additional ideas which could make this feature even nicer:

  • Upload of a csv file with the mapping inside is possible to fill the table. This would allow us to provide predefined migration files for certain tools where we know the old format.
  • Export / save a migration to be reused later (could be an export to csv)
  • Allow do delete aliases (I think this we require changes in ES as it's not possible today)
@ruflin ruflin added enhancement New value added to drive a business result Feature:ecs labels Dec 7, 2018
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-operations

@tylersmalley tylersmalley added the Team:Operations Team label for Operations Team label Dec 7, 2018
@tylersmalley
Copy link
Contributor

@ruflin we're working on trying to get this in for 6.6 and it would be part of the 7.0 Upgrade Assistant. Our goal is for plugins to be able to extend what fields need to be aliased - then present a UI to the user for effected indices and allow them click a button to add the aliases.

Do you have an example of all the mappings you're wanting to perform?

@ruflin
Copy link
Contributor Author

ruflin commented Dec 10, 2018

A concrete list of aliases we will need can be found here: https://github.com/elastic/beats/pull/9283/files#diff-3a5cfd1aae7e3e54c908e482c7d7af26R63

To clarify: My request for this feature is broader then just the upgrade assistant but also have it available as an independent tool. Assuming someone ingest Bro logs in JSON format with fluentd and wants to map them to ECS, he could use this tool also in 7.2.

@tylersmalley
Copy link
Contributor

@ruflin, since Beats decided not to go down this path - can this issue now be closed?

@ruflin
Copy link
Contributor Author

ruflin commented Feb 12, 2019

This feature request is not specific to Beats but is broader related to alias management especially in the context of ECS. A large portion of the data that comes into Elasticsearch in the near future will not be in ECS but mapping it to ECS would be very powerful. This is where this feature comes into play. I would still hope this feature is happening :-)

@tylersmalley
Copy link
Contributor

tylersmalley commented Feb 13, 2019

Ok, since this is more of an Elasticsearch management thing - I am going to move this issue over to that team for triage.

@tylersmalley tylersmalley added Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more and removed Team:Operations Team label for Operations Team labels Feb 13, 2019
@elasticmachine
Copy link
Contributor

Pinging @elastic/es-ui

@cjcenizal cjcenizal added the Feature:Index Management Index and index templates UI label Oct 1, 2019
@cjcenizal
Copy link
Contributor

@ruflin I created #57061 to track a feature for allowing users to edit an index, including its mappings. This will be a step towards the features envisaged in this issue.

@alisonelizabeth alisonelizabeth removed the Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more label Sep 17, 2024
@botelastic botelastic bot added the needs-team Issues missing a team label label Sep 17, 2024
@alisonelizabeth alisonelizabeth added the Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more label Sep 17, 2024
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-management (Team:Kibana Management)

@botelastic botelastic bot removed the needs-team Issues missing a team label label Sep 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New value added to drive a business result Feature:ecs Feature:Index Management Index and index templates UI Team:Kibana Management Dev Tools, Index Management, Upgrade Assistant, ILM, Ingest Node Pipelines, and more
Projects
None yet
Development

No branches or pull requests

5 participants