elasticsearchkibanaaws-elasticsearchopensearch

How to reindex fileds in kibana when using AWS Opensearch service


I want to resolve conflicts in the kibana fields when we are using AWS elasticsearch / AWS Opensearch service.

We have 3 fields showing as conflicted in Kibana. How I can resolve that?


Solution

  • You can use Ingest Pipelines for this purpose. What you can do is to create a pipeline and then reindex.
    E.g You want to rename time to timestamp in your index myindex001. You can do

        PUT _ingest/pipeline/my_pipeline
        {
          "description": "Rename 'time' to 'timestamp 'field from myindex001",
          "processors": [
            {
              "rename": {
                "field": "time",
                "target_field": "timestamp", 
                "ignore_missing": true
              } 
            }
          ]
        }
         

    Now you can reindex your index.

    
        POST _reindex
        {
          "source": {
            "index": "myindex001"
          },
          "dest": {
            "index": "myindex001-back",
            "pipeline": "my_pipeline"
          }
        }
         

    After this you can reindex your index to the original name by executing the above statement without pipeline part and names inverted.
    You can also rename more than one field at a time by putting more than one rename in the pipeline.
    Surely there will be a better way to do it.