千家信息网

EKL PHP如何调取_search接口查询、添加购物车统计

发表于:2025-01-17 作者:千家信息网编辑
千家信息网最后更新 2025年01月17日,这篇文章将为大家详细讲解有关EKL PHP如何调取_search接口查询、添加购物车统计,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
千家信息网最后更新 2025年01月17日EKL PHP如何调取_search接口查询、添加购物车统计

这篇文章将为大家详细讲解有关EKL PHP如何调取_search接口查询、添加购物车统计,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

error_reporting( E_ALL&~E_NOTICE );

define('ELK_QUERY_RR_QUERY', '{

"query": {

"filtered": {

"query": {

"query_string": {

"analyze_wildcard": true,

"query": "type:phptestkv AND report_type:\"cart.add\""

}

},

"filter": {

"bool": {

"must": [

{

"range": {

"@timestamp": {

"gte": "now-15m"

}

}

}

],

"must_not": []

}

}

}

},

"size": 0,

"aggs": {

"1": {

"terms": {

"field": "success",

"size": 5,

"order": {

"_count": "desc"

}

}

}

}

}

}');

define('ELK_QUERY_RR_URL', 'http://localhost:9200/logstash-phptest-*/_search?search_type=count&pretty');

function curl_post($url, $content, $header=''){

$curl = curl_init();

curl_setopt($curl, CURLOPT_URL, $url);

curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);

curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2);

curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);

curl_setopt($curl, CURLOPT_AUTOREFERER, 1);

curl_setopt($curl, CURLOPT_POST, 1);

curl_setopt($curl, CURLOPT_POSTFIELDS, $content);

curl_setopt($curl, CURLOPT_TIMEOUT, 30);

curl_setopt($curl, CURLOPT_HEADER, 0);

curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

$tmpInfo = curl_exec($curl);

if (curl_errno($curl))

{

print("[error] CURL ERROR: ".curl_error($curl)."\r\n");

}

curl_close($curl);

return $tmpInfo;

}

function Query_Curl(){

$request_params_rr_query = ELK_QUERY_RR_QUERY;

$rr_target =curl_post(ELK_QUERY_RR_URL, $request_params_rr_query, 'Authorization:Basic bmVpZ291OjE5dkpDYzdCUUltbw==');

return get_rr_value($rr_target);

}

function get_rr_value($results){

$results_object = json_decode($results, true);

return $results_object;

}

function query(){

$result=Query_Curl();

$doc_count=$result['aggregations']['1']['buckets'][0]['doc_count'];

$total=$result['hits']['total'];

$ratio=0;

if($total>=5){

if($doc_count && $total){

$ratio=round($doc_count/$total, 2);

}

if($result['aggregations']['1']['buckets'][0]['key']==1){

if($ratio){

$ratio=1-($ratio);

}

}

}

return $ratio;

}

$ratio=query();

echo $ratio;

?>

关于"EKL PHP如何调取_search接口查询、添加购物车统计"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

0