如何在弹性搜索中比较来自两个不同特定日志的两个源IP



在Elasticsearch中,我想比较两个日志(natlogGateway log)与DSL查询。

nat日志中有srcip1,网关日志中有srcip2

我想如果这个条件srcip1 === srcip2满足,"agent.id"显示在结果中。

上面是我已经创建的相关查询

{
"query": {
"bool": {
"should": [
{
"match": {
"location": "\Users\Saad\Desktop\nat.log"
}
},
{
"match": {
"location": "\Users\Saad\Desktop\attendance-logs-with-ports.log"
}
}
],
"must": [
{
"term": {
"data.srcip": "1.1.1.1"
}
}
]
}
},
"fields": [
"data.srcip1"
],
"_source": false

}

我试了很多方法,但都没有成功。

使用聚合显示数据摘要。如果您想根据某个ip的日志类型比较不同的代理,那么查询将是:

<<p>摄取数据/strong>
POST test_saad/_doc
{
"location": "\Users\Saad\Desktop\nat.log",
"data": {
"srcip1": "1.1.1.1"
},
"agent": {
"id": "agent_1"
}
}
POST test_saad/_doc
{
"location": "\Users\Saad\Desktop\attendance-logs-with-ports.log",
"data": {
"srcip2": "1.1.1.1"
},
"agent": {
"id": "agent_1"
}
}
POST test_saad/_doc
{
"location": "\Users\Saad\Desktop\nat.log",
"data": {
"srcip1": "1.1.1.1"
},
"agent": {
"id": "agent_2"
}
}

POST test_saad/_search
{
"size": 0,
"query": {
"bool": {
"must": [
{
"bool": {
"should": [
{
"term": {
"data.srcip1.keyword": "1.1.1.2"
}
},
{
"term": {
"data.srcip2.keyword": "1.1.1.2"
}
}
],
"minimum_should_match": 1
}
},
{
"bool": {
"should": [
{
"term": {
"location.keyword": """UsersSaadDesktopnat.log"""
}
},
{
"term": {
"location.keyword": """UsersSaadDesktopattendance-logs-with-ports.log"""
}
}
],
"minimum_should_match": 1
}
}
]
}
},
"aggs": {
"log_types": {
"terms": {
"field": "location.keyword",
"size": 10
},
"aggs": {
"agent_types": {
"terms": {
"field": "agent.id.keyword",
"size": 10
}
}
}
}
}
}
<<p>反应/strong>
{
"took" : 2,
"timed_out" : false,
"_shards" : {
"total" : 1,
"successful" : 1,
"skipped" : 0,
"failed" : 0
},
"hits" : {
"total" : {
"value" : 3,
"relation" : "eq"
},
"max_score" : null,
"hits" : [ ]
},
"aggregations" : {
"log_types" : {
"doc_count_error_upper_bound" : 0,
"sum_other_doc_count" : 0,
"buckets" : [
{
"key" : """UsersSaadDesktopnat.log""",
"doc_count" : 2,
"agent_types" : {
"doc_count_error_upper_bound" : 0,
"sum_other_doc_count" : 0,
"buckets" : [
{
"key" : "agent_1",
"doc_count" : 1
},
{
"key" : "agent_2",
"doc_count" : 1
}
]
}
},
{
"key" : """UsersSaadDesktopattendance-logs-with-ports.log""",
"doc_count" : 1,
"agent_types" : {
"doc_count_error_upper_bound" : 0,
"sum_other_doc_count" : 0,
"buckets" : [
{
"key" : "agent_1",
"doc_count" : 1
}
]
}
}
]
}
}
}

相关内容

  • 没有找到相关文章

最新更新