Python连接云Elasticsearch,如何过滤filebeat类型运行日志?
Elasticsearch Python 查询过滤 type 为 filebeat 的日志
一、修改查询仅返回 type=filebeat 的日志
你当前代码用match_all查询返回了所有日志,只需把查询条件改成精确匹配type字段为filebeat的内容即可。
如果type是不分词的关键字类型(keyword),用term查询更合适:
results_gen = elasticsearch.helpers.scan( es, query={ "query": { "term": { "type": "filebeat" } } }, index=ES_INDEX )
如果type是分词的文本类型(text),可以改用match查询:
results_gen = elasticsearch.helpers.scan( es, query={ "query": { "match": { "type": "filebeat" } } }, index=ES_INDEX )
修改后执行代码,就能只获取type字段为filebeat的日志条目。
二、关于获取 Elasticsearch 运行日志
如果要查看Elasticsearch集群自身的运行日志(比如节点启动、错误信息等),云端实例的这类日志通常在云平台控制台界面查看,Python客户端无法通过索引查询直接获取。
如果你的需求是查询被Filebeat采集的业务/系统运行日志(已存入Elasticsearch索引),上面的过滤查询就能帮你筛选出对应数据。
内容的提问来源于stack exchange,提问作者mrin9san
相关产品推荐
相关产品推荐

