Elasticsearch Configuration

This configuration template for Elastic enables you to fetch data using Request Body Search  and it  utilize scrolling It allows you to fetch  large amounts of data without affceting performance of your cluster.

{
  "parameters": {
    "api": {
      "authentication": {
        "type": "basic"
      },
      "baseUrl": "https://YOUR_ELASTICSEARCH_HOST",
      "pagination": {
        "method": "response.param",
        "responseParam": "_scroll_id",
        "queryParam": "scroll_id",
        "scrollRequest": {
          "endpoint": "_search/scroll",
          "method": "GET",
          "params": {
            "scroll": "1m"
          }
        }
      }
    },
    "config": {
      "outputBucket": "sapi-elasticsearch",
      "debug": true,
      "username": "YOUR_ELASTICSEARCH_USERNAME",
      "password": "YOUR_ELASTICSEARCH_PASSWORD",
      "jobs": [
        {
          "endpoint": "/kbc-files-*/_search?search_type=scan&scroll=1m",
          "params": {
            "query": {
              "filtered": {
                "query": {
                  "match_all": []
                },
                "filter": {
                  "bool": {
                    "must": [
                      {
                        "range": {
                          "created": {
                            "from": "now-48h"
                          }
                        }
                      }
                    ]
                  }
                }
              }
            },
            "partial_fields": {
              "file": {
                "include": [
                  "id",
                  "projectId",
                  "token.id",
                  "token.name",
                  "s3Path",
                  "name",
                  "uploadType",
                  "created",
                  "runId",
                  "isSliced",
                  "sizeBytes",
                  "isPublic",
                  "isEncrypted",
                  "tags",
                  "maxAgeDays",
                  "export.tableId"
                ]
              }
            },
            "size": 10000
          },
          "dataField": "hits.hits",
          "dataType": "files",
          "method": "POST"
        }
      ]
    }
  }
}
Comments