php接口统计,EKL PHP 调取_search接口查询登录统计

EKL PHP 调取_search接口查询登录统计

发布时间:2020-07-11 20:14:56

来源:51CTO

阅读:312

作者:脱变_JACK

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:\"passport.login\""

}

},

"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>=10){

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;

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值