首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从API上的灰日志中检索日志

如何从API上的灰日志中检索日志
EN

Stack Overflow用户
提问于 2020-05-07 13:46:37
回答 1查看 2.3K关注 0票数 5

如何使用PHP从灰色日志服务器搜索日志?

假设灰日志服务器是https://host.td/api/search/universal/absolute

EN

回答 1

Stack Overflow用户

发布于 2022-10-13 22:20:44

这个解决方案是用PHP实现的:

代码语言:javascript
复制
$url = 'https://host.td/api/search/universal/absolute'
   . '?query=' . urlencode('field:value')                 //query which you would also perform on UI
   . '&from=' . urlencode(Carbon::createFromTimestamp(0)) // min timestamp so we get all logs
   . '&to=' . urlencode(Carbon::createFromTimestamp(NumberUtils::MAX_32_BIT_INT)) // max timestamp so we get all logs
   . '&limit=' . $this->limit                             //how many results do we want?
   . '&fields=' . urlencode('field1,field2,field3')       //which fields do we want?
   . '&filter=' . urlencode('streams:<stream_id>')        //OPTIONAL: only search in this stream
   . '&sort=' . urlencode('field:desc')                   //sort result
   . '&decorate=false';                                   //decorate parameter


$res = (new Client())->get($url, [
    // generate a token on graylog UI;
    // we use basic auth, username=the token; password: hard coded string 'token'
'auth'    => ['<token_value>', 'token'],
'headers' => ['Accept' => 'application/json']             //we want a json result
]);

$json = \GuzzleHttp\json_decode($res->getBody());

如果您想按所提供的时间戳进行排序,请不要将其称为时间戳,因为在本例中使用的是graylog的时间戳,而不是您的时间戳。最后,我在存储的每个字段上都使用了前缀。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61659404

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档