J'ai configuré un analyseur personnalisé et mis certains documents dans l'index. Maintenant, je veux déboguer mes paramètres afin que je puisse voir quels n-grammes sont réellement entrés dans l'index.
Lorsque j'ai utilisé Solr auparavant, il y avait une possibilité de voir quelles chaînes étaient enregistrées dans l'index en tant que clés et également leur fréquence.
Si vous n'avez pas encore indexé trop de données dans l'index, vous pouvez utiliser le terme requête de facette sur le champ que vous souhaitez déboguer pour voir les jetons et leurs fréquences:
curl -XDELETE 'http://localhost:9200/test-idx'
echo
curl -XPUT 'http://localhost:9200/test-idx' -d '
{
"settings": {
"index.number_of_shards" : 1,
"index.number_of_replicas": 0
},
"mappings": {
"doc": {
"properties": {
"message": {"type": "string", "analyzer": "Snowball"}
}
}
}
}'
echo
curl -XPUT 'http://localhost:9200/test-idx/doc/1' -d '
{
"message": "How is this going to be indexed?"
}
'
echo
curl -XPOST 'http://localhost:9200/test-idx/_refresh'
echo
curl -XGET 'http://localhost:9200/test-idx/doc/_search?pretty=true&search_type=count' -d '{
"query": {
"match": {
"_id": "1"
}
},
"facets": {
"tokens": {
"terms": {
"field": "message"
}
}
}
}
'
echo
Vous pouvez afficher n'importe quel index existant en utilisant le CURL ci-dessous. Veuillez remplacer le nom d'index par votre nom réel avant de l'exécuter et il s'exécutera tel quel.
Voir le contenu de l'index
curl -H 'Content-Type: application/json' -X GET https://localhost:9200/index_name?pretty
Et la sortie comprendra un index (voir les paramètres dans la sortie) et ses mappages aussi et il ressemblera à la sortie ci-dessous -
{
"index_name": {
"aliases": {},
"mappings": {
"collection_name": {
"properties": {
"test_field": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}
}
},
"settings": {
"index": {
"creation_date": "1527377274366",
"number_of_shards": "5",
"number_of_replicas": "1",
"uuid": "6QfKqbbVQ0Gbsqkq7WZJ2g",
"version": {
"created": "6020299"
},
"provided_name": "index_name"
}
}
}
}
Voir TOUTES les données sous cet index
curl -H 'Content-Type: application/json' -X GET https://localhost:9200/index_name/_search?pretty
Vous pouvez même ajouter la taille des termes (termes indexés). Jetez un oeil à Elastic Search: comment voir les données indexées