Loki Http API 使用
Loki Http API 使用一、查询日志流1. 查询某个时间点日志GET /loki/api/v1/query示例:http://192.168.15.139:30100/loki/api/v1/query?direction=BACKWARD&limit=1000&query=sum(rate({job="anychatlog"}[2d]))返回:{“status”: “su
Loki Http API 使用
一、查询日志流
1. 查询某个时间点日志
GET /loki/api/v1/query
示例:
http://192.168.15.139:30100/loki/api/v1/query?direction=BACKWARD&limit=1000&query=sum(rate({job="anychatlog"}[2d]))
参数说明:
query:要执行的LogQL查询
limit: 要返回的最大条目数
time: 查询的评估时间作为一个纳秒的 Unix 纪元。默认为现在。
direction:确定日志的排序顺序。支持的值为forward或backward。默认为backward
2. 查询某个时间段日志
GET /loki/api/v1/query_range
示例:
http://192.168.15.139:30100/loki/api/v1/query_range?direction=BACKWARD&limit=1000&query={job="anychatlog"} &start=1641280408415000000&end=1641453208415000000&step=120
参数说明:
query:要执行的LogQL查询
limit: 要返回的最大条目数
start: 查询的开始时间,以纳秒 Unix 纪元表示。默认为一小时前。
end: 查询的结束时间,以纳秒 Unix 纪元表示。默认为现在。
step: 以duration格式或浮点秒数查询分辨率步长。duration指形式为 的 Prometheus 持续时间字符串[0-9]+[smhdwy]。例如,5m 表示持续时间为 5 分钟。默认为基于start和的动态值end。仅适用于产生矩阵响应的查询类型。
interval:这个参数是实验性的;请参阅步骤与间隔下的说明。只返回(或大于)指定间隔的条目,可以是duration格式或浮点数。仅适用于产生流响应的查询。
direction:确定日志的排序顺序。支持的值为forward或backward。默认为backward.
二、查询标签
1. 查询标签列表
GET /loki/api/v1/labels
参数:
start: 查询的开始时间,以纳秒 Unix 纪元表示。默认为 6 小时前。
end: 查询的结束时间,以纳秒 Unix 纪元表示。默认为现在。
示例:
http://192.168.15.139:30100/loki/api/v1/labels
2. 查询标签值
查询给定时间跨度内给定标签的已知值列表
GET /api/prom/label/<name>/values
参数:
name: GET /loki/api/v1/label中的标签
start: 查询的开始时间,以纳秒 Unix 纪元表示。默认为 6 小时前。
end: 查询的结束时间,以纳秒 Unix 纪元表示。默认为现在。
示例:
http://192.168.15.139:30100/loki/api/v1/label/job/values
三、匹配特定标签集列表
返回匹配特定标签集的时间序列列表
GET /loki/api/v1/series
POST /loki/api/v1/series
参数:
match[]=<series_selector>:选择要返回的日志流的标签。match[]必须至少提供一个参数。
start=: 开始时间戳。
end=: 结束时间戳。
示例:
http://192.168.15.139:30100/loki/api/v1/series?start=1640922291907000000&end=1641527091908000000&match[]={host="192.168.11.123"}
四、删除日志流
说明:需要2.3.0以上版本的Loki,并按官方文档进行配置
1. 删除日志流
POST loki_addr/loki/api/admin/delete?match[]
参数:
match[]:标签匹配器,用于标识要从中删除的流,必须至少提供一个参数
<series_selector>:查询参数
start:开始的时间戳
end:结束的时间戳
204 响应表示成功。
cURL 命令的示例形式:
示例:
http://192.168.15.139:30100/loki/api/admin/delete?match[]={job="anychatlog"}
2. 列出删除请求
使用以下 API 列出现有的删除请求:
GET /loki/api/admin/delete
示例:
http://192.168.15.139:30100/loki/api/admin/delete
3. 取消删除请求
POST /loki/api/admin/cancel_delete_request
示例:
http://192.168.15.139:30100/loki/api/admin/cancel_delete_request?request_id=dad569a8
四、其它常用API
GET /ready
当 Loki 摄取器准备好接受流量时,返回 HTTP 200。如果在 Kubernetes 上运行 Loki/ready可以用作就绪探针。
POST /flush
将摄取器持有的所有内存块刷新到后备存储。主要用于本地测试。
POST /ingester/flush_shutdown
摄取器的关闭,特别是将始终刷新它持有的任何内存块。这有助于缩小启用 WAL 的摄取器,我们希望确保旧的 WAL 目录不是孤立的,而是刷新到我们的块后端。
GET /metrics
公开 Prometheus 指标。有关 导出的指标列表,请参阅 loki
GET /config
/config公开当前配置。可选的mode查询参数可用于修改输出。如果它具有该值,则diff仅返回默认配置和当前配置之间的差异。值defaults返回默认配置
GET /loki/api/v1/status/buildinfo
在 JSON 对象中公开构建信息。字段包括version,revision,branch,buildDate,buildUser,和goVersion。
五、Loki http Api 官方说明
https://grafana.com/docs/loki/latest/api/
更多推荐
所有评论(0)