Specify Routing on Index Alias's Term Lookup Filter


(Carlos Vializ) #1

I made a post on StackOverflow, but I think the visibility there is low for
ElasticSearch problems. I've copied the text here

I am using Logstash, ElasticSearch and Kibana to allow multiple users
to log in and view the log data they have forwarded. I have created index
aliases for each user. These restrict their results to contain only their
own data.

I'd like to assign users to groups, and allow users to view data for the
computers in their group. I created a parent-child relationship between the
groups and the users, and I created a term lookup filter on the alias.

My problem is, I receive a RoutingMissingException when I try to apply the
alias.

Is there a way to specify the routing for the term lookup filter? How can I
lookup terms on a parent document?

I posted the mapping and alias below, but a full gist recreation is
available at this link https://gist.github.com/cvializ/11294031.

curl -XPUT 'http://localhost:9200/accesscontrol/' -d '{
"mappings" : {
"group" : {
"properties" : {
"name" : { "type" : "string" },
"hosts" : { "type" : "string" }
}
},
"user" : {
"_parent" : { "type" : "group" },
"_routing" : { "required" : true, "path" : "group_id" },
"properties" : {
"name" : { "type" : "string" },
"group_id" : { "type" : "string" }
}
}
}}'

Create the logstash alias for cvializ

curl -XPOST 'http://localhost:9200/_aliases' -d '{
"actions" : [
{ "remove" : { "index" : "logstash-2014.04.25", "alias" : "cvializ-logstash-2014.04.25" } },
{
"add" : {
"index" : "logstash-2014.04.25",
"alias" : "cvializ-logstash-2014.04.25",
"routing" : "intern",
"filter": {
"terms" : {
"host" : {
"index" : "accesscontrol",
"type" : "user",
"id" : "cvializ",
"path" : "group.hosts"
},
"_cache_key" : "cvializ_hosts"
}
}
}
}
]}'

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/66cab474-f33e-47b0-a0de-64845bb95600%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


(system) #2