Je recherche déjà cela depuis 2 jours maintenant. J'utilise le sens chrome pour pouvoir tester mes requêtes mais je ne trouve pas comment spécifier sur quel index il est censé chercher. Donc mes requêtes recherchent sur tous les index et n'est pas facile à utiliser.
J'ai essayé les syntaxes suivantes:
GET _search
{
"query": {
"term": {
"_index": {
"value": "dev_events2"
}
}
}
}
GET _search
{
"_index": "dev_events2",
"query": {
"match_all" : { }
}
}
GET _search
{
"index": "dev_events2",
"query": {
"match_all" : { }
}
}
Cordialement,
Benjamin V.
Modifier J'ai enfin trouvé la réponse: il suffit d'ajouter le nom d'index dans l'URL pour le get: localhost: 9201/myIndexName
Vous pouvez également ajouter l'index/type à la requête GET/PUT/DELETE ...:
GET index/type/_search
{
"query": {
"bool": {
"must": [
{
"term": {
...
}
}
]
}
}
}
Heres curl exemple ce qui fonctionne et vous permet de rechercher plusieurs index:
curl 'http://localhost:9200/myindex1,myindex2/_search?q=*'
Pour un index spécifique unique:
curl 'http://localhost:9200/myindex1/_search?q=*'
Pour rechercher des noms d'index:
curl 'localhost:9200/_cat/indices'
Et si vous souhaitez rechercher tous les index:
curl 'localhost:9200/_search?pretty'
GET index_name/_search
{
"query": {
"match_all" : { }
}
}
ou spécifiez le type d'index
GET index_name/index_type/_search
{
"query": {
"match_all" : { }
}
}