elasticsearchバージョン1.4.5
キバナ4.1.1
logstash 1.5.2-1
フィールドが存在するが特定の値と等しくない場合にのみ結果を返すkibana 4のディスカバータブで検索を構成するにはどうすればよいですか?
LogstashにApacheログデータがいくつかあり、status_code
が定義されているが200に等しくないすべてのエントリを返します。したがって、可能な値が{undefined、200、403、404、500など}の場合、 4xxおよび5xxエラーのすべてのバリアントが表示されますが、フィールドが定義されておらず、200に設定されているメッセージは表示されません。
私は次を試しました:
+status_code: (*) -status_code: (200)
((status_code: (*) AND NOT status_code: (200))
Elasticsearch curl querys への参照もありますが、それらをkibana検索バーで使用できるものに変換する方法がわかりません。以下に例を示します。
{
"query": {
"constant_score": {
"filter": {
"bool": {
"must": {
"exists": {
"field": "status_code"
}
},
"must_not": {
"term": {
"status_code": '200'
}
}
}
}
}
}
}
ありがとう!
探しているクエリは次のとおりです。
_exists_:status_code AND NOT status_code:200
このリンク は、クエリ文字列クエリでサポートされているものをすべて表示します。
前の答えはまさに私が求めていたものですが、これも有用です:
status_code:[300 TO 600]