一个想法是使用
elasticsearch
logstash过滤器
为了在Logstash处理访问日志文档时获取给定的发布。
该过滤器将检索
sm_creator
在该领域
publications
索引具有相同的
object_id
并使用您需要的出版物文档中的任何字段丰富访问日志。此后,您只需查询logstash- *索引即可。
elasticsearch {
hosts => [“localhost:9200”]
index => publications
query => “id:%{object_id}”
fields => {“sm_creator” => “author”}
}
</code>
因此,您的访问日志文档将在此之后显示为
的
“给我所有访问’史密斯,约翰’的出版物”
</强>
你可以简单地查询
sm_creator
所有logstash索引中的字段
{
“type”: “apache_access”,
“clientip”: “192.243.xxx.xxx”,
“verb”: “GET”,
“request”: “/publications/boreal:12345?direction=rtl&language=en”,
…
“url_path”: “/publications/boreal:12345”,
“url_params”: {
“direction”: “rtl”,
“language”: “end”
},
“object_id”: “boreal:12345”,
“author”: [
“Smith, John”,
“Dupont, Albert”,
“Reegan, Ronald”
],
…
}
</code>