我正在用Python启动一个小脚本,以便在我在Kibana中进行的查询上创建一个小GET。
目前,在Kibana中,我收到了一个IP列表,其中包括:
我想用Python接收此信息,并且我已经尝试使用搜索,但是我不确定是否理解。
这是Kibana中的查询:
GET /_search
{
"size": 0,
"query": {
"range": {
"@timestamp": {
"gte": 1552922613804,
"lte": 1552923513804,
"format": "epoch_millis"
}
}
},
"aggs": {
"2": {
"significant_terms": {
"field": "origin.keyword",
"size": 300
}
}
}
}
是否可以在python中创建相同的查询?
提前致谢!
最佳答案
是的,只需转换您的查询,以便python可以理解。
如果您具有用于Elastic的身份验证设置,则还需要通过身份验证。 (用户名,密码)作为元组。将此添加为请求(auth = {username,password))
import json
import requests
HEADERS = {
'Content-Type': 'application/json'
}
uri = "[insert your endpoint]"+"/_search"
query = json.dumps({
"size": 0,
"query": {
"range": {
"@timestamp": {
"gte": 1552922613804,
"lte": 1552923513804,
"format": "epoch_millis"
}
}
},
"aggs": {
"2": {
"significant_terms": {
"field": "origin.keyword",
"size": 300
}
}
}
})
r = requests.get(uri,headers=HEADERS, data=query).json()
print(r)
关于python - 从python中的kibana查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55533387/