मैं सिर्फ elasticsearch के साथ शुरू कर रहा हूँ। मैं php में curl का उपयोग कर क्वेरी करना चाहता हूँ।PHP में elasticsearch क्वेरी और curl
इस कोड को कुछ भी नहीं है ... (त्रुटि देख नीचे अगर मैं कमांड लाइन से निष्पादित। मुझे यकीन है कि इस त्रुटि कंसोल में पंक्ति विराम के कारण होता है नहीं कर रहा हूँ ...)
$url = "curl -s -XGET http://<my_url>:9200/idx_occurrence/Occurrence/_search -d '
{
'filtered' : {
'query' : {
'term' : { 'kingdom_interpreted' : 'Plantae' }
}
}
}' ";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
$return=curl_exec($ch);
var_dump($return);
लेकिन अगर मैं देता इस यूआरएल http://<my_url>:9200/idx_occurrence/Occurrence/_search?q=kingdom_interpreted:Plantae
का उपयोग करें तो मुझे curl से परिणाम मिलते हैं।
शायद हो सकता है कि फ़िल्टर गलत है? (मैंने सफलता के बिना कई विकल्पों की कोशिश की)
ERROR: {"error":"SearchPhaseExecutionException[Failed to execute phase [query], total failure; shardFailures {[AS6HqxgNRtyU9-pQKhJsXQ][idx_occurrence][3]: SearchParseException[[idx_occurrence][3]: from[-1],size[-1]: Parse Failure [Failed to parse source [\n{\n filtered : {\n query : {\n term : { kingdom : Plantae }\n }\n}\n}]]]; nested: SearchParseException[[idx_occurrence][3]: from[-1],size[-1]: Parse Failure [No parser for element [filtered]]]; }{[AS6HqxgNRtyU9-pQKhJsXQ][idx_occurrence][2]: SearchParseException[[idx_occurrence][2]: from[-1],size[-1]: Parse Failure [Failed to parse source [\n{\n filtered : {\n query : {\n term : { kingdom : Plantae }\n }\n}\n}]]]; nested: SearchParseException[[idx_occurrence][2]: from[-1],size[-1]: Parse Failure [No parser for element [filtered]]]; }]","status":500}
वैसे, एक ऐसी ही त्रुटि मैं हो रही है यहाँ हल किया जाता है http://stackoverflow.com/questions/8746086/debugging-elasticsearch इसलिए मैंने एक समान क्वेरी बनाई (क्वेरी सिंटैक्स तब वैध होना चाहिए ...) – user1249791