使用Elasticsearch SDK访问日志服务
本文介绍如何使用Elasticsearch SDK和Elasticsearch兼容接口分析日志服务中的数据。
重要
本文档为阿里云原创文档,知识产权归阿里云所有,由于本文档旨在介绍阿里云与第三方产品交互的服务能力,因此可能会提及第三方公司或产品等名称。
前提条件
已采集数据到日志服务标准型Logstore。具体操作,请参见数据采集。
已至少创建一个字段索引。具体操作,请参见创建索引。
已创建阿里云账号的AccessKey。具体操作,请参见访问密钥。
建议使用RAM用户的AccessKey,该RAM用户需具备Logstore的数据查询权限。您可以通过权限助手,配置权限。具体操作,请参见配置权限助手。
注意事项
仅支持Elasticsearch 7.x版本的SDK访问Elasticsearch兼容接口。
在查询时不指定
@timestamp
,则默认查询24小时内的数据。
Python SDK访问示例
参见如下示例,查询2023-05-17 10:44:17~2023-05-17 10:49:17时间范围内的数据。
# pip install elasticsearch==7.10.0
from elasticsearch import Elasticsearch, helpers
es = Elasticsearch(hosts="https://etl-dev.cn-huhehaote.log.aliyuncs.com/es/",
http_auth=('AccessKeyId', 'AccessKeySecrect'),
verify_certs=True, timeout=300)
es.ping()
r = es.search(
index="etl-dev.estest",
body= {
"query": {
"bool": {
"filter": [
{
"range": {
"@timestamp": {
"gte": 1684291457000,
"lte": 1684291757000,
"format": "epoch_millis"
}
}
}
]
}
}
}
)
print(r)
参数名称 | 说明 |
| 数据访问地址。格式为 重要 只支持使用HTTPS协议。 |
| 输入阿里云AccessKey ID和阿里云AccessKey Secret。 建议使用RAM用户的AccessKey,该RAM用户需具备Logstore的数据查询权限。您可以通过权限助手,配置权限。具体操作,请参见配置权限助手。获取AccessKey的方法,请参见访问密钥。 |