介绍grafana loki中/loki/api/v1/tail接口的用法并写出用JavaScript请求该接口获取数据的代码
时间: 2023-09-14 22:06:07 浏览: 95
基于loki+grafana的在线nginx日志分析系统
5星 · 资源好评率100%
Grafana Loki是一款基于日志的分布式系统,/loki/api/v1/tail接口用于实时订阅Loki中最新的日志数据。该接口的用法如下:
1.请求方法:GET
2.请求参数:
参数名 | 类型 | 是否必须 | 描述
---|---|---|---
query | string | 是 | 查询语句,用于过滤需要获取的日志数据
limit | int | 否 | 限制返回的日志行数,默认为10,最大值为100
direction | string | 否 | 日志数据的方向,可选值为"forward"或"backward",默认为"forward"
regexp | bool | 否 | 查询语句是否为正则表达式,默认为false
3.请求示例:
```
GET /loki/api/v1/tail?query={app="example"}&limit=20&direction=forward
```
4.返回结果:
返回的结果为一个JSON数组,每一项代表一条日志数据,包含以下字段:
字段名 | 类型 | 描述
---|---|---
stream | object | 包含标签键值对的对象,用于标识日志数据
values | array | 包含日志行中的字段值的数组
以下是用JavaScript请求该接口获取数据的代码示例:
```javascript
const url = "http://loki.example.com/loki/api/v1/tail?query={app=%22example%22}&limit=20&direction=forward";
fetch(url)
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error(error));
```
注意,这里需要将查询语句中的双引号进行转义,否则会导致查询失败。
阅读全文