私はを使用しています。春データElasticsearchELasticseachでデータを解析します。私はすでにインデックスされた要素(elastalert)の魔女にalert_sentプロパティが含まれています。だから私がしたいのは、管理者に送信されたすべてのアラートを返すことです。私はリポジトリList<Alert> findByAlert_sentTrue()
でメソッドを定義しようとしましたが、アンダースコアが問題です(ドキュメントhttp://docs.spring.io/spring-data/elasticsearch/docs/current/reference/html/#repositories.query-methods.query-property-expressionsに記載されています)。ここで春データelasticsearchを通じて特定のフィールドを検索する
」インデックス付き要素のマッピング:カールで
@Document(indexName = "elastalert_status", type = "elastalert")
public class Rule {
@Id
private String id;
private String name;
private String es_host;
private String es_port;
private String index;
private String type;
private String query;
private String TimeStamp;
private String email;
private int runEvery;
private String alertsent;
private String alertTime;
private String matchBody;
...
Getters and Setters
...
はそれが
curl -XPOST 'localhost:9200/elastalert_status/elastalert/_search?pretty' -d '
{
"query": { "match": { "alert_sent": true } }
}'
だから、次のようになります。私はそのインデックス付きの要素を使用することを企業に作成した
{
"elastalert_status" : {
"mappings" : {
"elastalert" : {
"properties" : {
"@timestamp" : {
"type" : "date",
"format" : "dateOptionalTime"
},
"aggregate_id" : {
"type" : "string",
"index" : "not_analyzed"
},
"alert_exception" : {
"type" : "string"
},
"alert_info" : {
"properties" : {
"recipients" : {
"type" : "string"
},
"type" : {
"type" : "string"
}
}
},
"alert_sent" : {
"type" : "boolean"
},
"alert_time" : {
"type" : "date",
"format" : "dateOptionalTime"
},
"match_body" : {
"type" : "object",
"enabled" : false
},
"rule_name" : {
"type" : "string",
"index" : "not_analyzed"
}
}
}
}
}
}
Spring Data Elasticsearchを使用して送信されたアラートをすべて取得するにはどうすればよいですか?おかげさまで