Как создать шаблон Elasticsearch для приема своих данных

Сначала надо подготовить шаблон в формате JSON. В этом примере - 2 раздела (веб-сервис ws и ЭЦП sign), у каждого - свой набор полей:

appbeat.template.json
{
  "mappings": {
    "ws": {
      "properties": {
        "@timestamp": {
          "type": "date"
        },
        "guid": {
          "type": "keyword"
        },
        "result": {
          "type": "keyword"
        },
        "http_code": {
          "type": "short"
        },
        "uri": {
          "type": "text"
        },
        "request": {
          "type": "text"
        },
        "response": {
          "type": "text"
        },
        "name": {
          "type": "keyword"
        },
        "error": {
          "type": "text"
        },
        "user": {
          "type": "integer"
        }
      }
    },
    "sign": {
      "properties": {
        "@timestamp": {
          "type": "date"
        },
        "eventType": {
          "type": "keyword"
        },
        "docType": {
          "type": "keyword"
        },
        "docId": {
          "type": "integer"
        },
        "partner": {
            "kod": {
              "type": "integer"
            },
            "guid": {
              "type": "keyword"
            },
            "name": {
              "type": "keyword"
            },
            "fo": {
              "type": "keyword"
            }
          }
        },
        "message": {
          "type": "text"
        },
        "data": {
          "type": "text"
        }
      }
    }
  },
  "template": "app-beat-*",
  "settings": {
    "index.refresh_interval": "5s"
  }
}

Затем выполнить команду на создание:

curl -XPUT 'http://localhost:9200/_template/lkbeat' -d@appbeat.template.json

Также за основу можно взять этот шаблон httpbeat.template.json, он же: скачать

Ссылки

Печать/экспорт